1 for (int c0
= 1; c0
< 2 * M
- 1; c0
+= 1) {
2 for (int c1
= max(-M
+ 1, -c0
+ 1); c1
< 0; c1
+= 1) {
3 for (int c3
= max(1, -M
+ c0
+ 1); c3
<= min(M
- 1, c0
+ c1
); c3
+= 1)
4 S1(c3
, c0
+ c1
- c3
, -c1
);
5 for (int c2
= max(-M
+ c0
+ 1, -c1
); c2
< min(M
, c0
); c2
+= 1)
6 S2(c0
- c2
, c1
+ c2
, c2
);
8 for (int c3
= max(1, -M
+ c0
+ 1); c3
<= min(M
- 1, c0
); c3
+= 1)