1 if (P1
>= 0 && P1
<= 3 && P2
>= 0 && P2
<= 3)
2 for (int c0
= P1
- 1; c0
<= 3; c0
+= 1)
3 for (int c2
= 0; c2
<= 7; c2
+= 1)
4 for (int c3
= 0; c3
<= 7; c3
+= 1)
5 if ((5 * P2
+ 2 * c3
) % 9 <= 3) {
6 if (P1
>= 1 && c0
+ 1 == P1
&& (5 * P1
+ 2 * c2
) % 9 <= 2) {
7 s0(P1
- 1, P2
, c2
, c3
, ((5 * P1
+ 2 * c2
) % 9) + 1, (-4 * P2
+ 2 * c3
+ 9) % 9);
8 } else if (P1
== 0 && c0
== 3 && c2
% 4 == 0)
9 s0(3, P2
, c2
, c3
, (-c2
/ 4) + 3, (-4 * P2
+ 2 * c3
+ 9) % 9);