minus
0
y
0
minus
s
x
0
s
x
minus
s
x
s
y
minus
x
y
le
0
y
true
le
s
x
0
false
le
s
x
s
y
le
x
y
if
true
x
y
x
if
false
x
y
y
perfectp
0
false
perfectp
s
x
f
x
s
0
s
x
s
x
f
0
y
0
u
true
f
0
y
s
z
u
false
f
s
x
0
z
u
f
x
u
minus
z
s
x
u
f
s
x
s
y
z
u
if
le
x
y
f
s
x
minus
y
x
z
u
f
x
u
z
u
2.2
f
s
x
0
z
u
f
x
u
minus
z
s
x
u
f
s
x
s
y
z
u
f
s
x
minus
y
x
z
u
perfectp
s
x
f
x
s
0
s
x
s
x
f
s
x
s
y
z
u
minus
y
x
minus
s
x
s
y
minus
x
y
f
s
x
s
y
z
u
le
x
y
f
s
x
0
z
u
minus
z
s
x
le
s
x
s
y
le
x
y
f
s
x
s
y
z
u
f
x
u
z
u
f
s
x
s
y
z
u
if
le
x
y
f
s
x
minus
y
x
z
u
f
x
u
z
u
true
perfectp
s
x
f
x
s
0
s
x
s
x
false
f
s
x
s
y
z
u
f
x
u
z
u
f
s
x
s
y
z
u
f
s
x
minus
y
x
z
u
f
s
x
0
z
u
f
x
u
minus
z
s
x
u
true
le
2
0
s
1
1
2
le
2
0
minus
2
1
1
perfectp
1
0
false
0
0
true
0
0
f
4
0
0
0
1
if
3
0
f
4
1
3
0
minus
2
0
if
3
0
perfectp
1
0
f
s
x
s
y
z
u
f
s
x
minus
y
x
z
u
minus
0
y
0
minus
s
x
s
y
minus
x
y
minus
s
x
0
s
x
f
s
x
s
y
z
u
f
s
x
minus
y
x
z
u
true
le
2
0
s
1
1
2
le
2
0
minus
2
1
1
perfectp
1
0
false
0
0
true
0
0
f
4
0
0
0
1
if
3
0
f
4
2
3
0
minus
2
0
if
3
0
perfectp
1
0
minus
0
y
0
minus
s
x
s
y
minus
x
y
minus
s
x
0
s
x
f
s
x
0
z
u
minus
z
s
x
false
f
s
x
s
y
z
u
if
le
x
y
f
s
x
minus
y
x
z
u
f
x
u
z
u
false
f
s
x
s
y
z
u
le
x
y
false
le
s
x
s
y
le
x
y
true
le
2
0
s
1
1
2
le
2
1
2
0
minus
2
1
1
perfectp
1
0
false
0
0
true
0
0
f
4
0
0
0
1
if
3
0
f
4
2
3
0
minus
2
0
if
3
0
perfectp
1
0
minus
0
y
0
minus
s
x
s
y
minus
x
y
minus
s
x
0
s
x
f
s
x
s
y
z
u
minus
y
x
false
minus
s
x
s
y
minus
x
y
true
le
2
0
s
1
1
2
le
2
0
minus
2
1
1
perfectp
1
0
false
0
0
true
0
0
f
4
0
0
0
1
if
3
0
f
4
2
3
0
minus
2
1
2
0
if
3
0
perfectp
1
0
minus
0
y
0
minus
s
x
s
y
minus
x
y
minus
s
x
0
s
x
NaTT
certifiable-1.6