1/* Generated from /home/skimo/git/cloog/test/vivien.cloog by CLooG 0.14.0-292-g2bfd6ac gmp bits in 0.12s. */
2if (n >= 0) {
3  for (p1=-54*n+4;p1<=4;p1++) {
4    if (p1%2 == 0) {
5      S1((p1-2)/2);
6    }
7  }
8  if (n >= 1) {
9    S3(1);
10  }
11  if (n <= 1) {
12    S1(2);
13  }
14  if (n >= 2) {
15    S4(1,2);
16    S1(2);
17    S6(1,2);
18  }
19  for (p1=7;p1<=min(9,4*n-2);p1++) {
20    if (p1 == 8) {
21      S4(1,3);
22    }
23    if (p1 == 8) {
24      S1(3);
25    }
26    if (p1 == 8) {
27      S6(1,3);
28    }
29    if (p1 == 9) {
30      S3(2);
31    }
32    if ((p1+1)%2 == 0) {
33      S2((p1-3)/2,1);
34    }
35  }
36  for (p1=10;p1<=min(2*n+58,4*n-2);p1++) {
37    p2 = ceild(-p1+2,4);
38    if (p2 <= min(floord(-p1+2*n,2),floord(-p1+5,4))) {
39      if (p1%2 == 0) {
40        S4(-p2,(p1+2*p2)/2);
41      }
42    }
43    if (p1 >= 4*n-4) {
44      if (p1%2 == 0) {
45        for (p3=1;p3<=floord(p1-2*n-2,2);p3++) {
46          S5((p1-2*n)/2,n,p3);
47        }
48      }
49    }
50    p2 = ceild(-p1+6,4);
51    if (p2 <= min(floord(-p1+2*n,2),floord(-p1+9,4))) {
52      if (p1%2 == 0) {
53        S4(-p2,(p1+2*p2)/2);
54      }
55      for (p3=1;p3<=-p2;p3++) {
56        if (p1%2 == 0) {
57          S5(-p2+1,(p1+2*p2-2)/2,p3);
58        }
59      }
60    }
61    for (p2=ceild(-p1+10,4);p2<=min(-1,floord(-p1+2*n,2));p2++) {
62      if (p1%2 == 0) {
63        S4(-p2,(p1+2*p2)/2);
64      }
65      if (p1%2 == 0) {
66        S6(-p2+2,(p1+2*p2-4)/2);
67      }
68      for (p3=1;p3<=-p2;p3++) {
69        if (p1%2 == 0) {
70          S5(-p2+1,(p1+2*p2-2)/2,p3);
71        }
72      }
73    }
74    if ((p1 >= 2*n+4) && (p1 <= 4*n-6)) {
75      if (p1%2 == 0) {
76        S6((p1-2*n+2)/2,n-1);
77        for (p3=1;p3<=floord(p1-2*n-2,2);p3++) {
78          S5((p1-2*n)/2,n,p3);
79        }
80      }
81    }
82    if (p1 >= 2*n+6) {
83      if (p1%2 == 0) {
84        S6((p1-2*n)/2,n);
85      }
86    }
87    if (p1 <= 2*n+4) {
88      if (p1%2 == 0) {
89        S6(2,(p1-4)/2);
90      }
91      if ((p1+3)%4 == 0) {
92        S3((p1-1)/4);
93      }
94      if (p1%2 == 0) {
95        S1((p1-2)/2);
96      }
97    }
98    if (p1 >= 2*n+5) {
99      if ((p1+3)%4 == 0) {
100        S3((p1-1)/4);
101      }
102      if (p1%2 == 0) {
103        S1((p1-2)/2);
104      }
105    }
106    if (p1 <= 2*n+2) {
107      if (p1%2 == 0) {
108        S6(1,(p1-2)/2);
109      }
110    }
111    for (p2=max(1,ceild(p1-2*n-1,2));p2<=floord(p1-3,4);p2++) {
112      if ((p1+1)%2 == 0) {
113        S2((p1-2*p2-1)/2,p2);
114      }
115    }
116  }
117  if ((n >= 2) && (n <= 29)) {
118    S2(n,n-1);
119  }
120  if ((n >= 2) && (n <= 29)) {
121    S1(2*n-1);
122  }
123  if ((n >= 2) && (n <= 28)) {
124    S3(n);
125  }
126  for (p1=max(7,4*n+2);p1<=2*n+58;p1++) {
127    if (p1%2 == 0) {
128      S1((p1-2)/2);
129    }
130  }
131  for (p1=2*n+59;p1<=4*n-2;p1++) {
132    p2 = ceild(-p1+2,4);
133    if (p2 <= min(floord(-p1+2*n,2),floord(-p1+5,4))) {
134      if (p1%2 == 0) {
135        S4(-p2,(p1+2*p2)/2);
136      }
137    }
138    if (p1 >= 4*n-4) {
139      if (p1%2 == 0) {
140        for (p3=1;p3<=floord(p1-2*n-2,2);p3++) {
141          S5((p1-2*n)/2,n,p3);
142        }
143      }
144    }
145    p2 = ceild(-p1+6,4);
146    if (p2 <= min(floord(-p1+2*n,2),floord(-p1+9,4))) {
147      if (p1%2 == 0) {
148        S4(-p2,(p1+2*p2)/2);
149      }
150      for (p3=1;p3<=-p2;p3++) {
151        if (p1%2 == 0) {
152          S5(-p2+1,(p1+2*p2-2)/2,p3);
153        }
154      }
155    }
156    for (p2=ceild(-p1+10,4);p2<=floord(-p1+2*n,2);p2++) {
157      if (p1%2 == 0) {
158        S4(-p2,(p1+2*p2)/2);
159      }
160      if (p1%2 == 0) {
161        S6(-p2+2,(p1+2*p2-4)/2);
162      }
163      for (p3=1;p3<=-p2;p3++) {
164        if (p1%2 == 0) {
165          S5(-p2+1,(p1+2*p2-2)/2,p3);
166        }
167      }
168    }
169    if (p1 <= 4*n-6) {
170      if (p1%2 == 0) {
171        S6((p1-2*n+2)/2,n-1);
172        for (p3=1;p3<=floord(p1-2*n-2,2);p3++) {
173          S5((p1-2*n)/2,n,p3);
174        }
175      }
176    }
177    if (p1%2 == 0) {
178      S6((p1-2*n)/2,n);
179    }
180    if ((p1+3)%4 == 0) {
181      S3((p1-1)/4);
182    }
183    for (p2=ceild(p1-2*n-1,2);p2<=floord(p1-3,4);p2++) {
184      if ((p1+1)%2 == 0) {
185        S2((p1-2*p2-1)/2,p2);
186      }
187    }
188  }
189  if (n >= 30) {
190    S2(n,n-1);
191  }
192  if (n >= 29) {
193    S3(n);
194  }
195}
196