6 int readPaulicoeffs(int* alpha, int* beta, int* gamma, int* delta, int numqubits);
7 complex double Gausssum1d(int quadraticcoeff, int linearcoeff);
8 complex double Kroneck(int arg);
10 // order of matrix elements is [row][column]!!!
16 int x, y, xp, yp, xpp, ypp, xppp, yppp;
18 int N; // number of qubits
21 printf("Error: N must be a multiple of 12!\n");
25 int alpha[N], beta[N], gamma[N], delta[N];
27 double complex summand, sum;
29 while(readPaulicoeffs(alpha, beta, gamma, delta, N)) {
31 /* for(i=0; i<N; i++) */
32 /* printf("%d %d %d %d\n", alpha[i], beta[i], gamma[i], delta[i]); */
35 for(i=0; i<N; i+=12) {
38 j = i + 6; // index of second tensored primitive t=6
43 //**for(x=0;x<=(y*(gamma[i]+gamma[i+1])+(y+1)*(gamma[i]+delta[i+1]))%2; x++) {
44 for(x=y*(beta[i]+alpha[i+1]+beta[i+1])%2;x<=(y*(beta[i]+alpha[i+1]+beta[i+1])+y*(gamma[i]+gamma[i+1])+(y+1)*(gamma[i]+delta[i+1]))%2; x++) {
45 for(yp=((gamma[i+3]+delta[i+4])*x)%2; yp<=(1+(gamma[i+3]+gamma[i+4])*x)%2; yp++) {
46 //****for(yp=((gamma[i+3]+delta[i+4])*x*(1+alpha[i]+beta[i]))%2; yp<=(1+(gamma[i+3]+gamma[i+4])*x*(1+alpha[i]+beta[i]))%2; yp++) {
47 //**for(xp=0;xp<=(yp*(gamma[i+3]+gamma[i+4])+(yp+1)*(gamma[i+3]+delta[i+4]))%2; xp++) {
48 for(xp=yp*(beta[i+3]+alpha[i+4]+beta[i+4])%2;xp<=(yp*(beta[i+3]+alpha[i+4]+beta[i+4])+yp*(gamma[i+3]+gamma[i+4])+(yp+1)*(gamma[i+3]+delta[i+4]))%2; xp++) {
51 //for(ypp=0; ypp<=1; ypp++) {
52 for(ypp=((gamma[j]+delta[j+1])*(x+xp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x+xp))%2;ypp++) {
53 //****for(ypp=((gamma[j]+delta[j+1])*(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])))%2;ypp++) {
54 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
55 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
56 //for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
57 for(yppp=((gamma[j+3]+delta[j+4])*(x+xp+xpp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(x+xp+xpp))%2; yppp++) {
58 //****for(yppp=((gamma[j+3]+delta[j+4])*(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j])))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j])))%2; yppp++) {
59 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
60 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
61 //summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
62 summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
63 //+ 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
64 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
65 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
66 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
67 //*(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
68 *(2.0*(0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
69 //+ 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
70 + 0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
71 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
72 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
77 for(ypp=0; ypp<=1; ypp++) {
78 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
79 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
80 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
81 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
82 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
83 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
84 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
85 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
86 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
87 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
88 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
93 //for(ypp=0; ypp<=1; ypp++) {
94 for(ypp=((gamma[j]+delta[j+1])*(x+xp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x+xp))%2;ypp++) {
95 //****for(ypp=((gamma[j]+delta[j+1])*(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])))%2;ypp++) {
96 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
97 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
98 //for(yppp=xpp; yppp<=1; yppp++) {
99 //**for(yppp=(x+xp+xpp)%2; yppp<=1; yppp++) {
100 for(yppp=(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j]))%2; yppp<=1; yppp++) {
101 //for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
102 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+(x+xp+xpp))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+(x+xp+xpp))%2; xppp++) {
103 for(xppp=(yppp*(delta[j+3]+delta[j+4])+(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j])))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j])))%2; xppp++) {
104 //summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
105 summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
106 //+ 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
107 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
108 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
109 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
110 //*(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
111 *(2.0*(0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
112 //+ 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
113 + 0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
114 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
120 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
121 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
122 for(yppp=0; yppp<=1; yppp++) {
123 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
124 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
125 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
126 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
127 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
128 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
129 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
130 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
131 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
134 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
135 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
136 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
137 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
138 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
139 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
140 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
141 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
144 for(yppp=0; yppp<=1; yppp++) {
145 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
146 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
147 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
148 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
149 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
150 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
151 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
157 //for(ypp=0; ypp<=1; ypp++) {
158 //**for(ypp=(x+xp)%2; ypp<=1; ypp++) {
159 for(ypp=(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3]))%2; ypp<=1; ypp++) {
160 //for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
161 //**for(xpp=(ypp*(delta[j]+delta[j+1])+x+xp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+x+xp)%2; xpp++) {
162 for(xpp=(ypp*(delta[j]+delta[j+1])+x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3]))%2; xpp++) {
163 //for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
164 for(yppp=((gamma[j+3]+delta[j+4])*(x+xp+ypp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(x+xp+ypp))%2; yppp++) {
165 //****for(yppp=((gamma[j+3]+delta[j+4])*(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+ypp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+ypp))%2; yppp++) {
166 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
167 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
168 //summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
169 summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
170 //+ 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
171 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
172 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
173 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
174 //*(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
175 *(2.0*(0.125*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
176 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
177 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
182 for(ypp=0; ypp<=1; ypp++) {
183 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
184 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
185 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
186 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
187 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
188 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
189 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
190 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
191 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
196 //for(ypp=0; ypp<=1; ypp++) {
197 //**for(ypp=(x+xp)%2; ypp<=1; ypp++) {
198 for(ypp=(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3]))%2; ypp<=1; ypp++) {
199 //for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
200 //**for(xpp=(ypp*(delta[j]+delta[j+1])+x+xp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+x+xp)%2; xpp++) {
201 for(xpp=(ypp*(delta[j]+delta[j+1])+x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3]))%2; xpp++) {
202 //for(yppp=ypp; yppp<=1; yppp++) {
203 //**for(yppp=(x+xp+ypp)%2; yppp<=1; yppp++) {
204 for(yppp=(x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+ypp)%2; yppp<=1; yppp++) {
205 //for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
206 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+x+xp+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+x+xp+ypp)%2; xppp++) {
207 for(xppp=(yppp*(delta[j+3]+delta[j+4])+x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+x*(1+alpha[i]+beta[i])+xp*(1+alpha[i+3]+beta[i+3])+ypp)%2; xppp++) {
208 //summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
209 summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
210 //+ 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
211 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
212 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
213 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
214 //*(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
215 *(2.0*(0.125*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
216 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
228 for(y=0; y<=1; y++) {
229 //**for(x=0;x<=(y*(gamma[i]+gamma[i+1])+(y+1)*(gamma[i]+delta[i+1]))%2; x++) {
230 for(x=y*(beta[i]+alpha[i+1]+beta[i+1])%2;x<=(y*(beta[i]+alpha[i+1]+beta[i+1])+y*(gamma[i]+gamma[i+1])+(y+1)*(gamma[i]+delta[i+1]))%2; x++) {
231 for(yp=0; yp<=(1+alpha[i+5])%2; yp++) {
232 for(xp=0;xp<=(1+beta[i+5])%2; xp++) {
233 for(ypp=0; ypp<=1; ypp++) {
234 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
235 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
236 for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
237 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
238 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
239 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
240 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
241 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
242 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
243 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
244 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
245 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
248 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
249 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
250 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
251 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
252 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
253 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
254 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
255 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
258 //**for(yppp=xpp; yppp<=1; yppp++) {
259 for(yppp=xpp*(1+alpha[j]+beta[j])%2; yppp<=1; yppp++) {
260 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
261 for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp*(1+alpha[j]+beta[j]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp*(1+alpha[j]+beta[j]))%2; xppp++) {
262 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
263 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
264 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
265 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
266 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
267 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
273 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
274 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
275 for(yppp=0; yppp<=1; yppp++) {
276 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
277 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
278 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
279 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
280 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
281 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
282 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
283 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
286 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
287 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
288 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
289 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
290 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
291 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
292 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
295 for(yppp=0; yppp<=1; yppp++) {
296 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
297 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
298 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
299 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
300 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
301 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
307 for(ypp=0; ypp<=1; ypp++) {
308 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
309 for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
310 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
311 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
312 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
313 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
314 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
315 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
316 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
317 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
320 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
321 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
322 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
323 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
324 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
325 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
326 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
329 for(yppp=ypp; yppp<=1; yppp++) {
330 for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
331 summand += ((0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
332 + 0.125*pow(2.0,1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
333 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
334 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
335 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
347 for(y=0; y<=1; y++) {
348 //**for(x=0;x<=(y*(gamma[i]+gamma[i+1])+(y+1)*(gamma[i]+delta[i+1]))%2; x++) {
349 for(x=y*(beta[i]+alpha[i+1]+beta[i+1])%2;x<=(y*(beta[i]+alpha[i+1]+beta[i+1])+y*(gamma[i]+gamma[i+1])+(y+1)*(gamma[i]+delta[i+1]))%2; x++) {
350 //**for(yp=x; yp<=1; yp++) {
351 for(yp=x*(1+alpha[i]+beta[i])%2; yp<=1; yp++) {
352 //**for(xp=(yp*(delta[i+3]+delta[i+4])+x)%2;xp<=(1+yp*(gamma[i+3]+gamma[i+4])+x)%2; xp++) {
353 for(xp=(yp*(delta[i+3]+delta[i+4])+x*(1+alpha[i]+beta[i]))%2;xp<=(1+yp*(gamma[i+3]+gamma[i+4])+x*(1+alpha[i]+beta[i]))%2; xp++) {
354 //for(ypp=0; ypp<=1; ypp++) {
355 for(ypp=((gamma[j]+delta[j+1])*(x+yp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x+yp))%2;ypp++) {
356 //****for(ypp=((gamma[j]+delta[j+1])*(x*(1+alpha[i]+beta[i])+yp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x*(1+alpha[i]+beta[i])+yp))%2;ypp++) {
357 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
358 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
359 //for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
360 for(yppp=((gamma[j+3]+delta[j+4])*(x+yp+xpp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(x+yp+xpp))%2; yppp++) {
361 //****for(yppp=((gamma[j+3]+delta[j+4])*(x*(1+alpha[i]+beta[i])+yp+xpp*(1+alpha[j]+beta[j])))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(x*(1+alpha[i]+beta[i])+yp+xpp*(1+alpha[j]+beta[j])))%2; yppp++) {
362 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
363 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
364 //summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
365 summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
366 //+ 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
367 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
368 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
369 //*(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
370 *(2.0*(0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
371 //+ 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
372 + 0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
373 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
374 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
379 //for(ypp=0; ypp<=1; ypp++) {
380 for(ypp=((gamma[j]+delta[j+1])*(x+yp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x+yp))%2;ypp++) {
381 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
382 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
383 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
384 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
385 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
386 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
387 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
388 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
389 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
390 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
395 //for(ypp=0; ypp<=1; ypp++) {
396 for(ypp=((gamma[j]+delta[j+1])*(x+yp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x+yp))%2;ypp++) {
397 //****for(ypp=((gamma[j]+delta[j+1])*(x*(1+alpha[i]+beta[i])+yp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(x*(1+alpha[i]+beta[i])+yp))%2;ypp++) {
398 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
399 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
400 //for(yppp=xpp; yppp<=1; yppp++) {
401 //**for(yppp=(x+yp+xpp)%2; yppp<=1; yppp++) {
402 for(yppp=(x*(1+alpha[i]+beta[i])+yp+xpp*(1+alpha[j]+beta[j]))%2; yppp<=1; yppp++) {
403 //for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
404 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+(x+yp+xpp))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+(x+yp+xpp))%2; xppp++) {
405 for(xppp=(yppp*(delta[j+3]+delta[j+4])+(x*(1+alpha[i]+beta[i])+yp+xpp*(1+alpha[j]+beta[j])))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+(x*(1+alpha[i]+beta[i])+yp+xpp*(1+alpha[j]+beta[j])))%2; xppp++) {
406 //summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
407 summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
408 //+ 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
409 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
410 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
411 //*(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
412 *(2.0*(0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
413 //+ 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
414 + 0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
415 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
421 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
422 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
423 for(yppp=0; yppp<=1; yppp++) {
424 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
425 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
426 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
427 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
428 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
429 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
430 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
431 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
434 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
435 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
436 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
437 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
438 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
439 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
440 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
443 for(yppp=0; yppp<=1; yppp++) {
444 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
445 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
446 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
447 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
448 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
449 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
455 //for(ypp=0; ypp<=1; ypp++) {
456 //**for(ypp=(x+yp)%2; ypp<=1; ypp++) {
457 for(ypp=(x*(1+alpha[i]+beta[i])+yp)%2; ypp<=1; ypp++) {
458 //for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
459 //**for(xpp=(ypp*(delta[j]+delta[j+1])+x+yp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+x+yp)%2; xpp++) {
460 for(xpp=(ypp*(delta[j]+delta[j+1])+x*(1+alpha[i]+beta[i])+yp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+x*(1+alpha[i]+beta[i])+yp)%2; xpp++) {
461 //for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
462 for(yppp=((gamma[j+3]+delta[j+4])*(x+yp+ypp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(x+yp+ypp))%2; yppp++) {
463 //****for(yppp=((gamma[j+3]+delta[j+4])*(x*(1+alpha[i]+beta[i])+yp+ypp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(x*(1+alpha[i]+beta[i])+yp+ypp))%2; yppp++) {
464 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
465 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
466 //summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
467 summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
468 //+ 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
469 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
470 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
471 //*(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
472 *(2.0*(0.125*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
473 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
474 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
479 for(ypp=0; ypp<=1; ypp++) {
480 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
481 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
482 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
483 summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
484 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
485 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
486 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
487 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
492 //for(ypp=0; ypp<=1; ypp++) {
493 //**for(ypp=(x+yp)%2; ypp<=1; ypp++) {
494 for(ypp=(x*(1+alpha[i]+beta[i])+yp)%2; ypp<=1; ypp++) {
495 //for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
496 //**for(xpp=(ypp*(delta[j]+delta[j+1])+x+yp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+x+yp)%2; xpp++) {
497 for(xpp=(ypp*(delta[j]+delta[j+1])+x*(1+alpha[i]+beta[i])+yp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+x*(1+alpha[i]+beta[i])+yp)%2; xpp++) {
498 //for(yppp=ypp; yppp<=1; yppp++) {
499 //**for(yppp=(x+yp+ypp)%2; yppp<=1; yppp++) {
500 for(yppp=(x*(1+alpha[i]+beta[i])+yp+ypp)%2; yppp<=1; yppp++) {
501 //for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
502 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+x+yp+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+x+yp+ypp)%2; xppp++) {
503 for(xppp=(yppp*(delta[j+3]+delta[j+4])+x*(1+alpha[i]+beta[i])+yp+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+x*(1+alpha[i]+beta[i])+yp+ypp)%2; xppp++) {
504 //summand += (2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
505 summand += 2.0*(2.0*(0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*Gausssum1d(0.0,beta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(gamma[i+2]+delta[i+2])
506 //+ 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
507 + 0.125*pow(2.0,(1-y*pow(gamma[i]-gamma[i+1],2)-pow(y-1,2)*pow(gamma[i]-delta[i+1],2))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[i+1]-gamma[i])*pow(y+1,2)+2.0*(beta[i]+beta[i+1]+gamma[i]+delta[i+1])*x*pow(y+1,2)+2.0*(delta[i]+delta[i+1]+beta[i]+beta[i+1])*x*y+(2.0*beta[i]+3.0*delta[i]+delta[i+1])*y))*csqrt(-I)*Gausssum1d(gamma[i+2]+delta[i+2],0)*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1])*Kroneck(alpha[i+2]+beta[i+2]))
508 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
509 //*(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
510 *(2.0*(0.125*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
511 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
523 for(y=0; y<=(1+alpha[i+2])%2; y++) {
524 for(x=0; x<=(1+beta[i+2])%2; x++) {
525 for(yp=0; yp<=1; yp++) {
526 //**for(xp=0;xp<=(yp*(gamma[i+3]+gamma[i+4])+(yp+1)*(gamma[i+3]+delta[i+4]))%2; xp++) {
527 for(xp=yp*(beta[i+3]+alpha[i+4]+beta[i+4])%2;xp<=(yp*(beta[i+3]+alpha[i+4]+beta[i+4])+yp*(gamma[i+3]+gamma[i+4])+(yp+1)*(gamma[i+3]+delta[i+4]))%2; xp++) {
528 for(ypp=0; ypp<=1; ypp++) {
529 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
530 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
531 for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
532 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
533 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
535 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
536 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
537 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
538 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
539 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
540 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
541 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
544 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
545 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
546 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
547 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
548 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
549 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
550 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
551 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
554 //**for(yppp=xpp; yppp<=1; yppp++) {
555 for(yppp=xpp*(1+alpha[j]+beta[j])%2; yppp<=1; yppp++) {
556 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
557 for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp*(1+alpha[j]+beta[j]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp*(1+alpha[j]+beta[j]))%2; xppp++) {
558 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
559 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
560 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
561 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
562 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
563 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
569 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
570 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
571 for(yppp=0; yppp<=1; yppp++) {
572 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
573 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
574 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
575 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
576 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
577 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
578 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
579 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
582 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
583 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
584 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
585 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
586 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
587 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
588 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
591 for(yppp=0; yppp<=1; yppp++) {
592 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
593 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
594 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
595 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
596 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
597 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
603 for(ypp=0; ypp<=1; ypp++) {
604 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
605 for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
606 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
607 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
608 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
609 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
610 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
611 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
612 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
613 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
616 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
617 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
618 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
619 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
620 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
621 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
622 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
625 for(yppp=ypp; yppp<=1; yppp++) {
626 for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
627 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
628 *(0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
629 + 0.125*pow(2.0,1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
630 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
631 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
643 for(y=0; y<=(1+alpha[i+2])%2; y++) {
644 for(x=0; x<=(1+beta[i+2])%2; x++) {
645 for(yp=0; yp<=(1+alpha[i+5])%2; yp++) {
646 for(xp=0;xp<=(1+beta[i+5])%2; xp++) {
647 for(ypp=0; ypp<=1; ypp++) {
648 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
649 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
650 for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
651 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
652 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
653 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
654 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
655 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
656 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
657 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
658 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
661 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
662 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
663 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
664 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
665 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
666 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
667 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
670 //**for(yppp=xpp; yppp<=1; yppp++) {
671 for(yppp=xpp*(1+alpha[j]+beta[j])%2; yppp<=1; yppp++) {
672 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
673 for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp*(1+alpha[j]+beta[j]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp*(1+alpha[j]+beta[j]))%2; xppp++) {
674 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
675 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
676 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
677 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
678 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
684 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
685 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
686 for(yppp=0; yppp<=1; yppp++) {
687 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
688 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
689 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
690 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
691 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
692 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
693 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
696 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
697 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
698 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
699 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
700 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
701 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
704 for(yppp=0; yppp<=1; yppp++) {
705 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
706 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
707 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
708 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
709 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
715 for(ypp=0; ypp<=1; ypp++) {
716 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
717 for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
718 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
719 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
720 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
721 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
722 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
723 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
724 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
727 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
728 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
729 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
730 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
731 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
732 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
735 for(yppp=ypp; yppp<=1; yppp++) {
736 for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
737 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
738 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
739 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
740 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
752 for(y=0; y<=(1+alpha[i+2])%2; y++) {
753 for(x=0; x<=(1+beta[i+2])%2; x++) {
754 for(yp=0; yp<=1; yp++) {
755 for(xp=(yp*(delta[i+3]+delta[i+4]))%2;xp<=(1+yp*(gamma[i+3]+gamma[i+4]))%2; xp++) {
756 for(ypp=0; ypp<=1; ypp++) {
757 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
758 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
759 for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
760 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
761 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
762 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
763 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
764 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
765 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
766 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
767 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
770 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
771 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
772 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
773 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
774 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
775 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
776 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
779 //**for(yppp=xpp; yppp<=1; yppp++) {
780 for(yppp=xpp*(1+alpha[j]+beta[j])%2; yppp<=1; yppp++) {
781 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
782 for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp*(1+alpha[j]+beta[j]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp*(1+alpha[j]+beta[j]))%2; xppp++) {
783 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
784 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
785 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
786 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
787 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
793 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
794 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
795 for(yppp=0; yppp<=1; yppp++) {
796 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
797 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
798 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
799 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
800 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
801 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
802 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
805 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
806 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
807 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
808 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
809 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
810 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
813 for(yppp=0; yppp<=1; yppp++) {
814 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
815 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
816 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
817 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
818 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
824 for(ypp=0; ypp<=1; ypp++) {
825 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
826 for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
827 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
828 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
829 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
830 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
831 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
832 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
833 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
836 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
837 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
838 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
839 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
840 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
841 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
844 for(yppp=ypp; yppp<=1; yppp++) {
845 for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
846 summand += ((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+2]*y+pow(x+1,2)*(delta[i]+gamma[i+1]+2.0*beta[i+1])+x*(delta[i]+delta[i+1])))*Gausssum1d(1,beta[i]+beta[i+1]+delta[i]+(x+1)*gamma[i+1]+x*delta[i+1])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(gamma[i+2]+delta[i+2]))
847 *(0.125*(-I)*pow(2.0,(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
848 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
849 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
861 for(y=0; y<=1; y++) {
862 for(x=(y*(delta[i]+delta[i+1]))%2; x<=(1+y*(gamma[i]+gamma[i+1]))%2; x++) {
863 for(yp=((gamma[i+3]+delta[i+4])*y)%2; yp<=(1+(gamma[i+3]+gamma[i+4])*y)%2; yp++) {
864 //**for(xp=0;xp<=(yp*(gamma[i+3]+gamma[i+4])+(yp+1)*(gamma[i+3]+delta[i+4]))%2; xp++) {
865 for(xp=yp*(beta[i+3]+alpha[i+4]+beta[i+4])%2;xp<=(yp*(beta[i+3]+alpha[i+4]+beta[i+4])+yp*(gamma[i+3]+gamma[i+4])+(yp+1)*(gamma[i+3]+delta[i+4]))%2; xp++) {
867 //for(ypp=0; ypp<=1; ypp++) {
868 for(ypp=((gamma[j]+delta[j+1])*(y+xp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(y+xp))%2;ypp++) {
869 //****for(ypp=((gamma[j]+delta[j+1])*(y+xp*(1+alpha[i+3]+beta[i+3])))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(y+xp*(1+alpha[i+3]+beta[i+3])))%2;ypp++) {
870 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
871 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
872 //for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
873 for(yppp=((gamma[j+3]+delta[j+4])*(y+xp+xpp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(y+xp+xpp))%2; yppp++) {
874 //****for(yppp=((gamma[j+3]+delta[j+4])*(y+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j])))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(y+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j])))%2; yppp++) {
875 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
876 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
877 //summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
878 summand += 2.0*(2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
879 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
880 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
881 //*(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
882 *(2.0*(0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
883 //+ 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
884 + 0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
885 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
886 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
891 for(ypp=0; ypp<=1; ypp++) {
892 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
893 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
894 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
895 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
896 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
897 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
898 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
899 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
900 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
901 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
907 //for(ypp=0; ypp<=1; ypp++) {
908 for(ypp=((gamma[j]+delta[j+1])*(y+xp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(y+xp))%2;ypp++) {
909 //****for(ypp=((gamma[j]+delta[j+1])*(y+xp*(1+alpha[i+3]+beta[i+3])))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(y+xp*(1+alpha[i+3]+beta[i+3])))%2;ypp++) {
910 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
911 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
912 //for(yppp=xpp; yppp<=1; yppp++) {
913 //**for(yppp=(y+xp+xpp)%2; yppp<=1; yppp++) {
914 for(yppp=(y+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j]))%2; yppp<=1; yppp++) {
915 //for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
916 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+(y+xp+xpp))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+(y+xp+xpp))%2; xppp++) {
917 for(xppp=(yppp*(delta[j+3]+delta[j+4])+(y+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j])))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+(y+xp*(1+alpha[i+3]+beta[i+3])+xpp*(1+alpha[j]+beta[j])))%2; xppp++) {
918 //summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
919 summand += 2.0*(2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
920 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
921 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
922 //*(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
923 *(2.0*(0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
924 //+ 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
925 + 0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
926 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
932 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
933 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
934 for(yppp=0; yppp<=1; yppp++) {
935 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
936 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
937 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
938 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
939 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
940 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
941 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
942 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
945 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
946 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
947 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
948 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
949 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
950 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
951 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
954 for(yppp=0; yppp<=1; yppp++) {
955 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
956 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
957 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
958 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
959 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
960 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
966 //for(ypp=0; ypp<=1; ypp++) {
967 //**for(ypp=(y+xp)%2; ypp<=1; ypp++) {
968 for(ypp=(y+xp*(1+alpha[i+3]+beta[i+3]))%2; ypp<=1; ypp++) {
969 //for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
970 //**for(xpp=(ypp*(delta[j]+delta[j+1])+y+xp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+y+xp)%2; xpp++) {
971 for(xpp=(ypp*(delta[j]+delta[j+1])+y+xp*(1+alpha[i+3]+beta[i+3]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+y+xp*(1+alpha[i+3]+beta[i+3]))%2; xpp++) {
972 //for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
973 for(yppp=((gamma[j+3]+delta[j+4])*(y+xp+ypp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(y+xp+ypp))%2; yppp++) {
974 //****for(yppp=((gamma[j+3]+delta[j+4])*(y+xp*(1+alpha[i+3]+beta[i+3])+ypp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(y+xp*(1+alpha[i+3]+beta[i+3])+ypp))%2; yppp++) {
975 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
976 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
977 //summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
978 summand += 2.0*(2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
979 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
980 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
981 //*(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
982 *(2.0*(0.125*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
983 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
984 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
989 for(ypp=0; ypp<=1; ypp++) {
990 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
991 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
992 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
993 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
994 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
995 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
996 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
997 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
1002 //for(ypp=0; ypp<=1; ypp++) {
1003 //**for(ypp=(y+xp)%2; ypp<=1; ypp++) {
1004 for(ypp=(y+xp*(1+alpha[i+3]+beta[i+3]))%2; ypp<=1; ypp++) {
1005 //for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
1006 //**for(xpp=(ypp*(delta[j]+delta[j+1])+y+xp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+y+xp)%2; xpp++) {
1007 for(xpp=(ypp*(delta[j]+delta[j+1])+y+xp*(1+alpha[i+3]+beta[i+3]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+y+xp*(1+alpha[i+3]+beta[i+3]))%2; xpp++) {
1008 //for(yppp=ypp; yppp<=1; yppp++) {
1009 //**for(yppp=(y+xp+ypp)%2; yppp<=1; yppp++) {
1010 for(yppp=(y+xp*(1+alpha[i+3]+beta[i+3])+ypp)%2; yppp<=1; yppp++) {
1011 //for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
1012 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+y+xp+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+y+xp+ypp)%2; xppp++) {
1013 for(xppp=(yppp*(delta[j+3]+delta[j+4])+y+xp*(1+alpha[i+3]+beta[i+3])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+y+xp*(1+alpha[i+3]+beta[i+3])+ypp)%2; xppp++) {
1014 //summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1015 summand += 2.0*(2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(1-yp*pow(gamma[i+3]-gamma[i+4],2)-pow(yp-1,2)*pow(gamma[i+3]-delta[i+4],2))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1016 *(0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*Gausssum1d(0.0,beta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(gamma[i+5]+delta[i+5])
1017 + 0.125*cexp(M_PI*I/2.0*((delta[i+4]-gamma[i+3])*pow(yp+1,2)+2.0*(beta[i+3]+beta[i+4]+gamma[i+3]+delta[i+4])*xp*pow(yp+1,2)+2.0*(delta[i+3]+delta[i+4]+beta[i+3]+beta[i+4])*xp*yp+(2.0*beta[i+3]+3.0*delta[i+3]+delta[i+4])*yp))*csqrt(-I)*Gausssum1d(gamma[i+5]+delta[i+5],0)*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4])*Kroneck(alpha[i+5]+beta[i+5])))
1018 //*(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1019 *(2.0*(0.125*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1020 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
1032 for(y=0; y<=1; y++) {
1033 for(x=(y*(delta[i]+delta[i+1]))%2; x<=(1+y*(gamma[i]+gamma[i+1]))%2; x++) {
1034 for(yp=0; yp<=(1+alpha[i+5])%2; yp++) {
1035 for(xp=0;xp<=(1+beta[i+5])%2; xp++) {
1036 for(ypp=0; ypp<=1; ypp++) {
1037 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
1038 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
1039 for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
1040 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1041 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1042 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1043 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1044 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
1045 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
1046 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
1047 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
1050 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
1051 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
1052 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1053 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1054 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
1055 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
1056 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
1059 //**for(yppp=xpp; yppp<=1; yppp++) {
1060 for(yppp=xpp*(1+alpha[j]+beta[j])%2; yppp<=1; yppp++) {
1061 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
1062 for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp*(1+alpha[j]+beta[j]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp*(1+alpha[j]+beta[j]))%2; xppp++) {
1063 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1064 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1065 *(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
1066 + 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
1067 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
1073 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
1074 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
1075 for(yppp=0; yppp<=1; yppp++) {
1076 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1077 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1078 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1079 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1080 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
1081 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
1082 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
1085 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
1086 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
1087 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1088 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1089 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
1090 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
1093 for(yppp=0; yppp<=1; yppp++) {
1094 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
1095 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1096 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1097 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
1098 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
1104 for(ypp=0; ypp<=1; ypp++) {
1105 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
1106 for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
1107 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1108 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1109 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1110 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1111 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1112 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
1113 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
1116 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
1117 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
1118 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1119 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1120 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1121 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
1124 for(yppp=ypp; yppp<=1; yppp++) {
1125 for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
1126 summand += ((0.125*pow(2.0,pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1127 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[i+5]*yp+pow(xp+1,2)*(delta[i+3]+gamma[i+4]+2.0*beta[i+4])+xp*(delta[i+3]+delta[i+4])))*Gausssum1d(1,beta[i+3]+beta[i+4]+delta[i+3]+(xp+1)*gamma[i+4]+xp*delta[i+4])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(gamma[i+5]+delta[i+5])))
1128 *(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1129 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
1141 for(y=0; y<=1; y++) {
1142 for(x=(y*(delta[i]+delta[i+1]))%2; x<=(1+y*(gamma[i]+gamma[i+1]))%2; x++) {
1143 for(yp=y; yp<=1; yp++) {
1144 for(xp=(yp*(delta[i+3]+delta[i+4])+y)%2;xp<=(1+yp*(gamma[i+3]+gamma[i+4])+y)%2; xp++) {
1145 //for(ypp=0; ypp<=1; ypp++) {
1146 for(ypp=((gamma[j]+delta[j+1])*(y+yp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(y+yp))%2;ypp++) {
1147 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
1148 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
1149 //for(yppp=((gamma[j+3]+delta[j+4])*xpp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*xpp)%2; yppp++) {
1150 for(yppp=((gamma[j+3]+delta[j+4])*(y+yp+xpp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(y+yp+xpp))%2; yppp++) {
1151 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1152 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1153 //summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1154 summand += 2.0*(2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1155 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1156 //*(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
1157 *(2.0*(0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
1158 //+ 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
1159 + 0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
1160 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
1161 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
1166 for(ypp=0; ypp<=1; ypp++) {
1167 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
1168 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
1169 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
1170 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
1171 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1172 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1173 *((0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
1174 + 0.125*pow(2.0,1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
1175 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
1180 //for(ypp=0; ypp<=1; ypp++) {
1181 for(ypp=((gamma[j]+delta[j+1])*(y+yp))%2;ypp<=(1+(gamma[j]+gamma[j+1])*(y+yp))%2;ypp++) {
1182 //**for(xpp=0;xpp<=(ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
1183 for(xpp=ypp*(beta[j]+alpha[j+1]+beta[j+1])%2;xpp<=(ypp*(beta[j]+alpha[j+1]+beta[j+1])+ypp*(gamma[j]+gamma[j+1])+(ypp+1)*(gamma[j]+delta[j+1]))%2; xpp++) {
1184 //for(yppp=xpp; yppp<=1; yppp++) {
1185 //**for(yppp=(y+yp+xpp)%2; yppp<=1; yppp++) {
1186 for(yppp=(y+yp+xpp*(1+alpha[j]+beta[j]))%2; yppp<=1; yppp++) {
1187 //for(xppp=(yppp*(delta[j+3]+delta[j+4])+xpp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+xpp)%2; xppp++) {
1188 //**for(xppp=(yppp*(delta[j+3]+delta[j+4])+(y+yp+xpp))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+(y+yp+xpp))%2; xppp++) {
1189 for(xppp=(yppp*(delta[j+3]+delta[j+4])+(y+yp+xpp*(1+alpha[j]+beta[j])))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+(y+yp+xpp*(1+alpha[j]+beta[j])))%2; xppp++) {
1190 //summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1191 summand += 2.0*(2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1192 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1193 //*(2.0*(0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
1194 *(2.0*(0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*Gausssum1d(0.0,beta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(gamma[j+2]+delta[j+2])
1195 //+ 0.125*pow(2.0,(1-ypp*pow(gamma[j]-gamma[j+1],2)-pow(ypp-1,2)*pow(gamma[j]-delta[j+1],2))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
1196 + 0.125*cexp(M_PI*I/2.0*((delta[j+1]-gamma[j])*pow(ypp+1,2)+2.0*(beta[j]+beta[j+1]+gamma[j]+delta[j+1])*xpp*pow(ypp+1,2)+2.0*(delta[j]+delta[j+1]+beta[j]+beta[j+1])*xpp*ypp+(2.0*beta[j]+3.0*delta[j]+delta[j+1])*ypp))*csqrt(-I)*Gausssum1d(gamma[j+2]+delta[j+2],0)*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1])*Kroneck(alpha[j+2]+beta[j+2]))
1197 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
1203 for(ypp=0; ypp<=(1+alpha[j+2])%2; ypp++) {
1204 for(xpp=0; xpp<=(1+beta[j+2])%2; xpp++) {
1205 for(yppp=0; yppp<=1; yppp++) {
1206 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1207 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1208 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1209 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1210 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
1211 *(0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
1212 + 0.125*pow(2.0,1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2))*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
1215 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
1216 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
1217 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1218 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1219 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
1220 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
1223 for(yppp=0; yppp<=1; yppp++) {
1224 for(xppp=(yppp*(delta[j+3]+delta[j+4]))%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4]))%2; xppp++) {
1225 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1226 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1227 *((0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+2]*ypp+pow(xpp+1,2)*(delta[j]+gamma[j+1]+2.0*beta[j+1])+xpp*(delta[j]+delta[j+1])))*Gausssum1d(1,beta[j]+beta[j+1]+delta[j]+(xpp+1)*gamma[j+1]+xpp*delta[j+1])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(gamma[j+2]+delta[j+2]))
1228 *(0.125*(-I)*pow(2.0,(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
1234 //for(ypp=0; ypp<=1; ypp++) {
1235 for(ypp=(y+yp)%2; ypp<=1; ypp++) {
1236 //for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
1237 for(xpp=(ypp*(delta[j]+delta[j+1])+y+yp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+y+yp)%2; xpp++) {
1238 //for(yppp=((gamma[j+3]+delta[j+4])*ypp)%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*ypp)%2; yppp++) {
1239 for(yppp=((gamma[j+3]+delta[j+4])*(y+yp+ypp))%2; yppp<=(1+(gamma[j+3]+gamma[j+4])*(y+yp+ypp))%2; yppp++) {
1240 //**for(xppp=0;xppp<=(yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1241 for(xppp=yppp*(beta[j+3]+alpha[j+4]+beta[j+4])%2;xppp<=(yppp*(beta[j+3]+alpha[j+4]+beta[j+4])+yppp*(gamma[j+3]+gamma[j+4])+(yppp+1)*(gamma[j+3]+delta[j+4]))%2; xppp++) {
1242 //summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1243 summand += 2.0*(2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1244 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1245 //*(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(1-yppp*pow(gamma[j+3]-gamma[j+4],2)-pow(yppp-1,2)*pow(gamma[j+3]-delta[j+4],2)))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1246 *(2.0*(0.125*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1247 *(0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*Gausssum1d(0.0,beta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(gamma[j+5]+delta[j+5])
1248 + 0.125*cexp(M_PI*I/2.0*((delta[j+4]-gamma[j+3])*pow(yppp+1,2)+2.0*(beta[j+3]+beta[j+4]+gamma[j+3]+delta[j+4])*xppp*pow(yppp+1,2)+2.0*(delta[j+3]+delta[j+4]+beta[j+3]+beta[j+4])*xppp*yppp+(2.0*beta[j+3]+3.0*delta[j+3]+delta[j+4])*yppp))*csqrt(-I)*Gausssum1d(gamma[j+5]+delta[j+5],0)*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4])*Kroneck(alpha[j+5]+beta[j+5])));
1253 for(ypp=0; ypp<=1; ypp++) {
1254 for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
1255 for(yppp=0; yppp<=(1+alpha[j+5])%2; yppp++) {
1256 for(xppp=0;xppp<=(1+beta[j+5])%2; xppp++) {
1257 summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1258 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1259 *((0.125*pow(2.0,pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1260 *(0.125*2.0*csqrt(-I)*cexp(M_PI*I/2.0*(2.0*beta[j+5]*yppp+pow(xppp+1,2)*(delta[j+3]+gamma[j+4]+2.0*beta[j+4])+xppp*(delta[j+3]+delta[j+4])))*Gausssum1d(1,beta[j+3]+beta[j+4]+delta[j+3]+(xppp+1)*gamma[j+4]+xppp*delta[j+4])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(gamma[j+5]+delta[j+5])));
1265 //for(ypp=0; ypp<=1; ypp++) {
1266 for(ypp=(y+yp)%2; ypp<=1; ypp++) {
1267 //for(xpp=(ypp*(delta[j]+delta[j+1]))%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1]))%2; xpp++) {
1268 for(xpp=(ypp*(delta[j]+delta[j+1])+y+yp)%2; xpp<=(1+ypp*(gamma[j]+gamma[j+1])+y+yp)%2; xpp++) {
1269 //for(yppp=ypp; yppp<=1; yppp++) {
1270 for(yppp=(y+yp+ypp)%2; yppp<=1; yppp++) {
1271 //for(xppp=(yppp*(delta[j+3]+delta[j+4])+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+ypp)%2; xppp++) {
1272 for(xppp=(yppp*(delta[j+3]+delta[j+4])+y+yp+ypp)%2;xppp<=(1+yppp*(gamma[j+3]+gamma[j+4])+y+yp+ypp)%2; xppp++) {
1273 //summand += (2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1274 summand += 2.0*(2.0*(0.125*pow(2.0,(pow(y-1,2)*(pow(x,2)*(gamma[i]+delta[i+1])+pow(x-1,2)*(gamma[i+1]+delta[i])))*(pow(yp-1,2)*(pow(xp,2)*(gamma[i+3]+delta[i+4])+pow(xp-1,2)*(gamma[i+4]+delta[i+3])))*(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(y*(delta[i]+delta[i+1])+pow(y+1,2)*(delta[i]+gamma[i+1]+2*beta[i+1])+pow(x,2)+2*(beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y)*x))*Gausssum1d(0,x+beta[i]+beta[i+1]+delta[i]+gamma[i+1]*(y+1)+delta[i+1]*y+gamma[i+2]+delta[i+2])*Kroneck(gamma[i]+delta[i]-gamma[i+1]-delta[i+1]+1)*Kroneck(alpha[i+2]+beta[i+2]))
1275 *(0.125*(-I)*cexp(M_PI*I/2.0*(yp*(delta[i+3]+delta[i+4])+pow(yp+1,2)*(delta[i+3]+gamma[i+4]+2*beta[i+4])+pow(xp,2)+2*(beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp)*xp))*Gausssum1d(0,xp+beta[i+3]+beta[i+4]+delta[i+3]+gamma[i+4]*(yp+1)+delta[i+4]*yp+gamma[i+5]+delta[i+5])*Kroneck(gamma[i+3]+delta[i+3]-gamma[i+4]-delta[i+4]+1)*Kroneck(alpha[i+5]+beta[i+5])))
1276 //*(2.0*(0.125*pow(2.0,(pow(ypp-1,2)*(pow(xpp,2)*(gamma[j]+delta[j+1])+pow(xpp-1,2)*(gamma[j+1]+delta[j])))*(pow(yppp-1,2)*(pow(xppp,2)*(gamma[j+3]+delta[j+4])+pow(xppp-1,2)*(gamma[j+4]+delta[j+3]))))*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1277 *(2.0*(0.125*(-I)*cexp(M_PI*I/2.0*(ypp*(delta[j]+delta[j+1])+pow(ypp+1,2)*(delta[j]+gamma[j+1]+2*beta[j+1])+pow(xpp,2)+2*(beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp)*xpp))*Gausssum1d(0,xpp+beta[j]+beta[j+1]+delta[j]+gamma[j+1]*(ypp+1)+delta[j+1]*ypp+gamma[j+2]+delta[j+2])*Kroneck(gamma[j]+delta[j]-gamma[j+1]-delta[j+1]+1)*Kroneck(alpha[j+2]+beta[j+2]))
1278 *(0.125*(-I)*cexp(M_PI*I/2.0*(yppp*(delta[j+3]+delta[j+4])+pow(yppp+1,2)*(delta[j+3]+gamma[j+4]+2*beta[j+4])+pow(xppp,2)+2*(beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp)*xppp))*Gausssum1d(0,xppp+beta[j+3]+beta[j+4]+delta[j+3]+gamma[j+4]*(yppp+1)+delta[j+4]*yppp+gamma[j+5]+delta[j+5])*Kroneck(gamma[j+3]+delta[j+3]-gamma[j+4]-delta[j+4]+1)*Kroneck(alpha[j+5]+beta[j+5])));
1291 //printf("%lf+%lfI\n", creal(sum), cimag(sum));
1292 printf("%lf\n", cabs(creal(sum)));
1300 complex double Kroneck(int arg)
1302 arg = (arg+1)%2; // output 1 if argument is 0 mod 2 and 0 otherwise
1303 return ((complex double)arg);
1306 complex double Gausssum1d(int quadraticcoeff, int linearcoeff)
1308 /*****************************************
1309 /* NOTE! we assume coeffs are either 0 or 1
1310 /* (So you cannot pass off a linear coeff as a quadratic coeff by multiplying it by a factor of 2 (and considering it as mod 4)!)
1311 *****************************************/
1313 quadraticcoeff %= 2;
1316 if(quadraticcoeff == 0)
1317 if(linearcoeff == 0)
1322 if(linearcoeff == 0)
1329 int readPaulicoeffs(int *alpha, int *beta, int *gamma, int *delta, int numqubits)
1334 if(scanf("%d %d %d %d", &alpha[0], &beta[0], &gamma[0], &delta[0]) != EOF) {
1335 for(i=1; i<numqubits; i++) {
1336 scanf("%d %d %d %d", &alpha[i], &beta[i], &gamma[i], &delta[i]);