1*5971e316Smrg for (int c0 = 1; c0 <= N; c0 += 1) 2*5971e316Smrg S1(c0); 3*5971e316Smrg for (int c0 = N + 1; c0 <= 2 * N; c0 += 1) 4*5971e316Smrg for (int c1 = 1; c1 <= N; c1 += 1) 5*5971e316Smrg S2(c1, -N + c0); 6*5971e316Smrg for (int c0 = 2 * N + 1; c0 <= M + N; c0 += 1) { 7*5971e316Smrg for (int c1 = 1; c1 <= N; c1 += 1) 8*5971e316Smrg S3(c1, -2 * N + c0); 9*5971e316Smrg for (int c1 = 1; c1 <= N; c1 += 1) 10*5971e316Smrg S2(c1, -N + c0); 11*5971e316Smrg } 12*5971e316Smrg for (int c0 = M + N + 1; c0 <= M + 2 * N; c0 += 1) 13*5971e316Smrg for (int c1 = 1; c1 <= N; c1 += 1) 14*5971e316Smrg S3(c1, -2 * N + c0); 15