{ f(0) } .
{ f(1) } .
{ f(2) } .
{ f(3) } .
false :- q(0).
false :- u(0).
false :- q_1(0).
false :- u_1(0).
false :- m_1(0).
false :- m_1(1).
false :- m_1(2).
false :- m_1(3).
m_1(0) :- x_1(0), zero_1.
m_1(1) :- x_1(1), zero_1.
m_1(2) :- x_1(2), zero_1.
m_1(3) :- x_1(3), zero_1.
m_1(0) :- d_1(0), not zero_1.
m_1(1) :- d_1(1), not zero_1.
m_1(2) :- d_1(2), not zero_1.
m_1(3) :- d_1(3), not zero_1.
a_1(0,0) :- i_1(0,1), i_1(1,0).
a_1(0,1) :- i_1(0,2), i_1(2,0).
a_1(0,2) :- i_1(0,3), i_1(3,0).
a_1(0,3) :- i_1(0,4), i_1(4,0).
a_1(1,0) :- i_1(1,1), a_1(0,0).
a_1(2,0) :- i_1(1,2), a_1(1,0).
a_1(3,0) :- i_1(1,3), a_1(2,0).
a_1(1,1) :- i_1(2,1), a_1(0,1).
a_1(2,1) :- i_1(2,2), a_1(1,1).
a_1(3,1) :- i_1(2,3), a_1(2,1).
a_1(1,2) :- i_1(3,1), a_1(0,2).
a_1(2,2) :- i_1(3,2), a_1(1,2).
a_1(3,2) :- i_1(3,3), a_1(2,2).
a_1(1,0) :- i_1(1,1), z_1(0,1).
a_1(2,0) :- i_1(1,2), z_1(1,1).
a_1(3,0) :- i_1(1,3), z_1(2,1).
a_1(1,1) :- i_1(2,1), z_1(0,2).
a_1(2,1) :- i_1(2,2), z_1(1,2).
a_1(3,1) :- i_1(2,3), z_1(2,2).
a_1(1,2) :- i_1(3,1), z_1(0,3).
a_1(2,2) :- i_1(3,2), z_1(1,3).
a_1(3,2) :- i_1(3,3), z_1(2,3).
a_1(1,0) :- a_1(0,0), z_1(0,1).
a_1(2,0) :- a_1(1,0), z_1(1,1).
a_1(3,0) :- a_1(2,0), z_1(2,1).
a_1(1,1) :- a_1(0,1), z_1(0,2).
a_1(2,1) :- a_1(1,1), z_1(1,2).
a_1(3,1) :- a_1(2,1), z_1(2,2).
a_1(1,2) :- a_1(0,2), z_1(0,3).
a_1(2,2) :- a_1(1,2), z_1(1,3).
a_1(3,2) :- a_1(2,2), z_1(2,3).
a_1(1,3) :- a_1(0,3), i_1(1,4).
a_1(2,3) :- a_1(1,3), i_1(2,4).
a_1(3,3) :- a_1(2,3), i_1(3,4).
a_1(1,3) :- a_1(0,3), i_1(4,1).
a_1(2,3) :- a_1(1,3), i_1(4,2).
a_1(3,3) :- a_1(2,3), i_1(4,3).
a_1(1,3) :- i_1(1,4), i_1(4,1).
a_1(2,3) :- i_1(2,4), i_1(4,2).
a_1(3,3) :- i_1(3,4), i_1(4,3).
a_1(4,0) :- a_1(3,0), z_1(3,1).
a_1(4,1) :- a_1(3,1), z_1(3,2).
a_1(4,2) :- a_1(3,2), z_1(3,3).
a_1(4,4) :- a_1(3,4), z_1(3,5).
a_1(4,1) :- a_1(3,1), a_1(4,0).
a_1(4,2) :- a_1(3,2), a_1(4,1).
a_1(4,4) :- a_1(3,4), a_1(4,3).
a_1(4,1) :- z_1(3,2), a_1(4,0).
a_1(4,2) :- z_1(3,3), a_1(4,1).
a_1(4,4) :- z_1(3,5), a_1(4,3).
a_1(4,3) :- a_1(3,3), i_1(4,4).
a_1(4,3) :- a_1(3,3), a_1(4,2).
a_1(4,3) :- i_1(4,4), a_1(4,2).
i_1(0,4) :- k_1(0).
i_1(1,4) :- k_1(1).
i_1(2,4) :- k_1(2).
i_1(3,4) :- k_1(3).
i_1(4,4) :- k_1(4).
i_1(0,2) :- k_1(0).
i_1(1,2) :- k_1(1).
i_1(2,2) :- k_1(2).
i_1(3,2) :- k_1(3).
i_1(4,2) :- k_1(4).
i_1(0,0) :- k_1(0).
i_1(1,0) :- k_1(1).
i_1(2,0) :- k_1(2).
i_1(3,0) :- k_1(3).
i_1(4,0) :- k_1(4).
z_1(0,0) :- i_1(0,1), not i_1(1,0).
z_1(0,1) :- i_1(0,2), not i_1(2,0).
z_1(0,2) :- i_1(0,3), not i_1(3,0).
z_1(0,3) :- i_1(0,4), not i_1(4,0).
z_1(0,0) :- i_1(1,0), not i_1(0,1).
z_1(0,1) :- i_1(2,0), not i_1(0,2).
z_1(0,2) :- i_1(3,0), not i_1(0,3).
z_1(0,3) :- i_1(4,0), not i_1(0,4).
z_1(1,0) :- a_1(0,0), not z_1(0,1), not i_1(1,1).
z_1(2,0) :- a_1(1,0), not z_1(1,1), not i_1(1,2).
z_1(3,0) :- a_1(2,0), not z_1(2,1), not i_1(1,3).
z_1(1,1) :- a_1(0,1), not z_1(0,2), not i_1(2,1).
z_1(2,1) :- a_1(1,1), not z_1(1,2), not i_1(2,2).
z_1(3,1) :- a_1(2,1), not z_1(2,2), not i_1(2,3).
z_1(1,2) :- a_1(0,2), not z_1(0,3), not i_1(3,1).
z_1(2,2) :- a_1(1,2), not z_1(1,3), not i_1(3,2).
z_1(3,2) :- a_1(2,2), not z_1(2,3), not i_1(3,3).
z_1(1,0) :- z_1(0,1), not a_1(0,0), not i_1(1,1).
z_1(2,0) :- z_1(1,1), not a_1(1,0), not i_1(1,2).
z_1(3,0) :- z_1(2,1), not a_1(2,0), not i_1(1,3).
z_1(1,1) :- z_1(0,2), not a_1(0,1), not i_1(2,1).
z_1(2,1) :- z_1(1,2), not a_1(1,1), not i_1(2,2).
z_1(3,1) :- z_1(2,2), not a_1(2,1), not i_1(2,3).
z_1(1,2) :- z_1(0,3), not a_1(0,2), not i_1(3,1).
z_1(2,2) :- z_1(1,3), not a_1(1,2), not i_1(3,2).
z_1(3,2) :- z_1(2,3), not a_1(2,2), not i_1(3,3).
z_1(1,0) :- i_1(1,1), not a_1(0,0), not z_1(0,1).
z_1(2,0) :- i_1(1,2), not a_1(1,0), not z_1(1,1).
z_1(3,0) :- i_1(1,3), not a_1(2,0), not z_1(2,1).
z_1(1,1) :- i_1(2,1), not a_1(0,1), not z_1(0,2).
z_1(2,1) :- i_1(2,2), not a_1(1,1), not z_1(1,2).
z_1(3,1) :- i_1(2,3), not a_1(2,1), not z_1(2,2).
z_1(1,2) :- i_1(3,1), not a_1(0,2), not z_1(0,3).
z_1(2,2) :- i_1(3,2), not a_1(1,2), not z_1(1,3).
z_1(3,2) :- i_1(3,3), not a_1(2,2), not z_1(2,3).
z_1(1,0) :- a_1(0,0), z_1(0,1), i_1(1,1).
z_1(2,0) :- a_1(1,0), z_1(1,1), i_1(1,2).
z_1(3,0) :- a_1(2,0), z_1(2,1), i_1(1,3).
z_1(1,1) :- a_1(0,1), z_1(0,2), i_1(2,1).
z_1(2,1) :- a_1(1,1), z_1(1,2), i_1(2,2).
z_1(3,1) :- a_1(2,1), z_1(2,2), i_1(2,3).
z_1(1,2) :- a_1(0,2), z_1(0,3), i_1(3,1).
z_1(2,2) :- a_1(1,2), z_1(1,3), i_1(3,2).
z_1(3,2) :- a_1(2,2), z_1(2,3), i_1(3,3).
z_1(1,3) :- a_1(0,3), not i_1(1,4), not i_1(4,1).
z_1(2,3) :- a_1(1,3), not i_1(2,4), not i_1(4,2).
z_1(3,3) :- a_1(2,3), not i_1(3,4), not i_1(4,3).
z_1(1,3) :- i_1(1,4), not a_1(0,3), not i_1(4,1).
z_1(2,3) :- i_1(2,4), not a_1(1,3), not i_1(4,2).
z_1(3,3) :- i_1(3,4), not a_1(2,3), not i_1(4,3).
z_1(1,3) :- i_1(4,1), not a_1(0,3), not i_1(1,4).
z_1(2,3) :- i_1(4,2), not a_1(1,3), not i_1(2,4).
z_1(3,3) :- i_1(4,3), not a_1(2,3), not i_1(3,4).
z_1(1,3) :- a_1(0,3), i_1(1,4), i_1(4,1).
z_1(2,3) :- a_1(1,3), i_1(2,4), i_1(4,2).
z_1(3,3) :- a_1(2,3), i_1(3,4), i_1(4,3).
z_1(4,0) :- a_1(3,0), not z_1(3,1).
z_1(4,0) :- z_1(3,1), not a_1(3,0).
z_1(4,1) :- a_1(3,1), not z_1(3,2), not a_1(4,0).
z_1(4,2) :- a_1(3,2), not z_1(3,3), not a_1(4,1).
z_1(4,4) :- a_1(3,4), not z_1(3,5), not a_1(4,3).
z_1(4,1) :- z_1(3,2), not a_1(3,1), not a_1(4,0).
z_1(4,2) :- z_1(3,3), not a_1(3,2), not a_1(4,1).
z_1(4,4) :- z_1(3,5), not a_1(3,4), not a_1(4,3).
z_1(4,1) :- a_1(4,0), not a_1(3,1), not z_1(3,2).
z_1(4,2) :- a_1(4,1), not a_1(3,2), not z_1(3,3).
z_1(4,4) :- a_1(4,3), not a_1(3,4), not z_1(3,5).
z_1(4,1) :- a_1(3,1), z_1(3,2), a_1(4,0).
z_1(4,2) :- a_1(3,2), z_1(3,3), a_1(4,1).
z_1(4,4) :- a_1(3,4), z_1(3,5), a_1(4,3).
z_1(4,3) :- a_1(3,3), not i_1(4,4), not a_1(4,2).
z_1(4,3) :- i_1(4,4), not a_1(3,3), not a_1(4,2).
z_1(4,3) :- a_1(4,2), not a_1(3,3), not i_1(4,4).
z_1(4,3) :- a_1(3,3), i_1(4,4), a_1(4,2).
k_1(0) :- r_1(8).
k_1(1) :- r_1(9).
k_1(2) :- r_1(10).
k_1(3) :- r_1(11).
k_1(4) :- r_1(12).
c_1(0) :- i_1(0,0).
c_1(1) :- z_1(0,0).
c_1(2) :- z_1(1,0).
c_1(3) :- z_1(2,0).
c_1(4) :- z_1(3,0).
c_1(5) :- z_1(4,0).
c_1(6) :- z_1(4,1).
c_1(7) :- z_1(4,2).
c_1(8) :- z_1(4,3).
c_1(9) :- a_1(4,3).
r_1(0) :- l_1(0,0).
r_1(1) :- w_1(0,0).
r_1(2) :- w_1(1,0).
r_1(3) :- w_1(2,0).
r_1(4) :- w_1(3,0).
r_1(5) :- w_1(4,0).
r_1(6) :- w_1(5,0).
r_1(7) :- w_1(6,0).
r_1(8) :- w_1(7,0).
r_1(9) :- w_1(7,1).
r_1(10) :- w_1(7,2).
r_1(11) :- w_1(7,3).
r_1(12) :- w_1(7,4).
v_1(0,0) :- l_1(0,1), l_1(1,0).
v_1(0,1) :- l_1(0,2), l_1(2,0).
v_1(0,2) :- l_1(0,3), l_1(3,0).
v_1(0,3) :- l_1(0,4), l_1(4,0).
v_1(0,4) :- l_1(0,5), l_1(5,0).
v_1(0,5) :- l_1(0,6), l_1(6,0).
v_1(0,6) :- l_1(0,7), l_1(7,0).
v_1(1,0) :- l_1(1,1), v_1(0,0).
v_1(2,0) :- l_1(1,2), v_1(1,0).
v_1(3,0) :- l_1(1,3), v_1(2,0).
v_1(4,0) :- l_1(1,4), v_1(3,0).
v_1(5,0) :- l_1(1,5), v_1(4,0).
v_1(6,0) :- l_1(1,6), v_1(5,0).
v_1(1,1) :- l_1(2,1), v_1(0,1).
v_1(2,1) :- l_1(2,2), v_1(1,1).
v_1(3,1) :- l_1(2,3), v_1(2,1).
v_1(4,1) :- l_1(2,4), v_1(3,1).
v_1(5,1) :- l_1(2,5), v_1(4,1).
v_1(6,1) :- l_1(2,6), v_1(5,1).
v_1(1,2) :- l_1(3,1), v_1(0,2).
v_1(2,2) :- l_1(3,2), v_1(1,2).
v_1(3,2) :- l_1(3,3), v_1(2,2).
v_1(4,2) :- l_1(3,4), v_1(3,2).
v_1(5,2) :- l_1(3,5), v_1(4,2).
v_1(6,2) :- l_1(3,6), v_1(5,2).
v_1(1,3) :- l_1(4,1), v_1(0,3).
v_1(2,3) :- l_1(4,2), v_1(1,3).
v_1(3,3) :- l_1(4,3), v_1(2,3).
v_1(4,3) :- l_1(4,4), v_1(3,3).
v_1(5,3) :- l_1(4,5), v_1(4,3).
v_1(6,3) :- l_1(4,6), v_1(5,3).
v_1(1,4) :- l_1(5,1), v_1(0,4).
v_1(2,4) :- l_1(5,2), v_1(1,4).
v_1(3,4) :- l_1(5,3), v_1(2,4).
v_1(4,4) :- l_1(5,4), v_1(3,4).
v_1(5,4) :- l_1(5,5), v_1(4,4).
v_1(6,4) :- l_1(5,6), v_1(5,4).
v_1(1,5) :- l_1(6,1), v_1(0,5).
v_1(2,5) :- l_1(6,2), v_1(1,5).
v_1(3,5) :- l_1(6,3), v_1(2,5).
v_1(4,5) :- l_1(6,4), v_1(3,5).
v_1(5,5) :- l_1(6,5), v_1(4,5).
v_1(6,5) :- l_1(6,6), v_1(5,5).
v_1(1,0) :- l_1(1,1), w_1(0,1).
v_1(2,0) :- l_1(1,2), w_1(1,1).
v_1(3,0) :- l_1(1,3), w_1(2,1).
v_1(4,0) :- l_1(1,4), w_1(3,1).
v_1(5,0) :- l_1(1,5), w_1(4,1).
v_1(6,0) :- l_1(1,6), w_1(5,1).
v_1(1,1) :- l_1(2,1), w_1(0,2).
v_1(2,1) :- l_1(2,2), w_1(1,2).
v_1(3,1) :- l_1(2,3), w_1(2,2).
v_1(4,1) :- l_1(2,4), w_1(3,2).
v_1(5,1) :- l_1(2,5), w_1(4,2).
v_1(6,1) :- l_1(2,6), w_1(5,2).
v_1(1,2) :- l_1(3,1), w_1(0,3).
v_1(2,2) :- l_1(3,2), w_1(1,3).
v_1(3,2) :- l_1(3,3), w_1(2,3).
v_1(4,2) :- l_1(3,4), w_1(3,3).
v_1(5,2) :- l_1(3,5), w_1(4,3).
v_1(6,2) :- l_1(3,6), w_1(5,3).
v_1(1,3) :- l_1(4,1), w_1(0,4).
v_1(2,3) :- l_1(4,2), w_1(1,4).
v_1(3,3) :- l_1(4,3), w_1(2,4).
v_1(4,3) :- l_1(4,4), w_1(3,4).
v_1(5,3) :- l_1(4,5), w_1(4,4).
v_1(6,3) :- l_1(4,6), w_1(5,4).
v_1(1,4) :- l_1(5,1), w_1(0,5).
v_1(2,4) :- l_1(5,2), w_1(1,5).
v_1(3,4) :- l_1(5,3), w_1(2,5).
v_1(4,4) :- l_1(5,4), w_1(3,5).
v_1(5,4) :- l_1(5,5), w_1(4,5).
v_1(6,4) :- l_1(5,6), w_1(5,5).
v_1(1,5) :- l_1(6,1), w_1(0,6).
v_1(2,5) :- l_1(6,2), w_1(1,6).
v_1(3,5) :- l_1(6,3), w_1(2,6).
v_1(4,5) :- l_1(6,4), w_1(3,6).
v_1(5,5) :- l_1(6,5), w_1(4,6).
v_1(6,5) :- l_1(6,6), w_1(5,6).
v_1(1,0) :- v_1(0,0), w_1(0,1).
v_1(2,0) :- v_1(1,0), w_1(1,1).
v_1(3,0) :- v_1(2,0), w_1(2,1).
v_1(4,0) :- v_1(3,0), w_1(3,1).
v_1(5,0) :- v_1(4,0), w_1(4,1).
v_1(6,0) :- v_1(5,0), w_1(5,1).
v_1(1,1) :- v_1(0,1), w_1(0,2).
v_1(2,1) :- v_1(1,1), w_1(1,2).
v_1(3,1) :- v_1(2,1), w_1(2,2).
v_1(4,1) :- v_1(3,1), w_1(3,2).
v_1(5,1) :- v_1(4,1), w_1(4,2).
v_1(6,1) :- v_1(5,1), w_1(5,2).
v_1(1,2) :- v_1(0,2), w_1(0,3).
v_1(2,2) :- v_1(1,2), w_1(1,3).
v_1(3,2) :- v_1(2,2), w_1(2,3).
v_1(4,2) :- v_1(3,2), w_1(3,3).
v_1(5,2) :- v_1(4,2), w_1(4,3).
v_1(6,2) :- v_1(5,2), w_1(5,3).
v_1(1,3) :- v_1(0,3), w_1(0,4).
v_1(2,3) :- v_1(1,3), w_1(1,4).
v_1(3,3) :- v_1(2,3), w_1(2,4).
v_1(4,3) :- v_1(3,3), w_1(3,4).
v_1(5,3) :- v_1(4,3), w_1(4,4).
v_1(6,3) :- v_1(5,3), w_1(5,4).
v_1(1,4) :- v_1(0,4), w_1(0,5).
v_1(2,4) :- v_1(1,4), w_1(1,5).
v_1(3,4) :- v_1(2,4), w_1(2,5).
v_1(4,4) :- v_1(3,4), w_1(3,5).
v_1(5,4) :- v_1(4,4), w_1(4,5).
v_1(6,4) :- v_1(5,4), w_1(5,5).
v_1(1,5) :- v_1(0,5), w_1(0,6).
v_1(2,5) :- v_1(1,5), w_1(1,6).
v_1(3,5) :- v_1(2,5), w_1(2,6).
v_1(4,5) :- v_1(3,5), w_1(3,6).
v_1(5,5) :- v_1(4,5), w_1(4,6).
v_1(6,5) :- v_1(5,5), w_1(5,6).
v_1(1,6) :- v_1(0,6), l_1(1,7).
v_1(2,6) :- v_1(1,6), l_1(2,7).
v_1(3,6) :- v_1(2,6), l_1(3,7).
v_1(4,6) :- v_1(3,6), l_1(4,7).
v_1(5,6) :- v_1(4,6), l_1(5,7).
v_1(6,6) :- v_1(5,6), l_1(6,7).
v_1(1,6) :- v_1(0,6), l_1(7,1).
v_1(2,6) :- v_1(1,6), l_1(7,2).
v_1(3,6) :- v_1(2,6), l_1(7,3).
v_1(4,6) :- v_1(3,6), l_1(7,4).
v_1(5,6) :- v_1(4,6), l_1(7,5).
v_1(6,6) :- v_1(5,6), l_1(7,6).
v_1(1,6) :- l_1(1,7), l_1(7,1).
v_1(2,6) :- l_1(2,7), l_1(7,2).
v_1(3,6) :- l_1(3,7), l_1(7,3).
v_1(4,6) :- l_1(4,7), l_1(7,4).
v_1(5,6) :- l_1(5,7), l_1(7,5).
v_1(6,6) :- l_1(6,7), l_1(7,6).
v_1(7,0) :- v_1(6,0), w_1(6,1).
v_1(7,1) :- v_1(6,1), w_1(6,2).
v_1(7,2) :- v_1(6,2), w_1(6,3).
v_1(7,3) :- v_1(6,3), w_1(6,4).
v_1(7,4) :- v_1(6,4), w_1(6,5).
v_1(7,5) :- v_1(6,5), w_1(6,6).
v_1(7,7) :- v_1(6,7), w_1(6,8).
v_1(7,1) :- v_1(6,1), v_1(7,0).
v_1(7,2) :- v_1(6,2), v_1(7,1).
v_1(7,3) :- v_1(6,3), v_1(7,2).
v_1(7,4) :- v_1(6,4), v_1(7,3).
v_1(7,5) :- v_1(6,5), v_1(7,4).
v_1(7,7) :- v_1(6,7), v_1(7,6).
v_1(7,1) :- w_1(6,2), v_1(7,0).
v_1(7,2) :- w_1(6,3), v_1(7,1).
v_1(7,3) :- w_1(6,4), v_1(7,2).
v_1(7,4) :- w_1(6,5), v_1(7,3).
v_1(7,5) :- w_1(6,6), v_1(7,4).
v_1(7,7) :- w_1(6,8), v_1(7,6).
v_1(7,6) :- v_1(6,6), l_1(7,7).
v_1(7,6) :- v_1(6,6), v_1(7,5).
v_1(7,6) :- l_1(7,7), v_1(7,5).
l_1(0,4) :- p_1(0).
l_1(1,4) :- p_1(1).
l_1(2,4) :- p_1(2).
l_1(3,4) :- p_1(3).
l_1(4,4) :- p_1(4).
l_1(5,4) :- p_1(5).
l_1(6,4) :- p_1(6).
l_1(7,4) :- p_1(7).
l_1(0,2) :- p_1(0).
l_1(1,2) :- p_1(1).
l_1(2,2) :- p_1(2).
l_1(3,2) :- p_1(3).
l_1(4,2) :- p_1(4).
l_1(5,2) :- p_1(5).
l_1(6,2) :- p_1(6).
l_1(7,2) :- p_1(7).
l_1(0,1) :- p_1(0).
l_1(1,1) :- p_1(1).
l_1(2,1) :- p_1(2).
l_1(3,1) :- p_1(3).
l_1(4,1) :- p_1(4).
l_1(5,1) :- p_1(5).
l_1(6,1) :- p_1(6).
l_1(7,1) :- p_1(7).
l_1(0,0) :- p_1(0).
l_1(1,0) :- p_1(1).
l_1(2,0) :- p_1(2).
l_1(3,0) :- p_1(3).
l_1(4,0) :- p_1(4).
l_1(5,0) :- p_1(5).
l_1(6,0) :- p_1(6).
l_1(7,0) :- p_1(7).
w_1(0,0) :- l_1(0,1), not l_1(1,0).
w_1(0,1) :- l_1(0,2), not l_1(2,0).
w_1(0,2) :- l_1(0,3), not l_1(3,0).
w_1(0,3) :- l_1(0,4), not l_1(4,0).
w_1(0,4) :- l_1(0,5), not l_1(5,0).
w_1(0,5) :- l_1(0,6), not l_1(6,0).
w_1(0,6) :- l_1(0,7), not l_1(7,0).
w_1(0,0) :- l_1(1,0), not l_1(0,1).
w_1(0,1) :- l_1(2,0), not l_1(0,2).
w_1(0,2) :- l_1(3,0), not l_1(0,3).
w_1(0,3) :- l_1(4,0), not l_1(0,4).
w_1(0,4) :- l_1(5,0), not l_1(0,5).
w_1(0,5) :- l_1(6,0), not l_1(0,6).
w_1(0,6) :- l_1(7,0), not l_1(0,7).
w_1(1,0) :- v_1(0,0), not w_1(0,1), not l_1(1,1).
w_1(2,0) :- v_1(1,0), not w_1(1,1), not l_1(1,2).
w_1(3,0) :- v_1(2,0), not w_1(2,1), not l_1(1,3).
w_1(4,0) :- v_1(3,0), not w_1(3,1), not l_1(1,4).
w_1(5,0) :- v_1(4,0), not w_1(4,1), not l_1(1,5).
w_1(6,0) :- v_1(5,0), not w_1(5,1), not l_1(1,6).
w_1(1,1) :- v_1(0,1), not w_1(0,2), not l_1(2,1).
w_1(2,1) :- v_1(1,1), not w_1(1,2), not l_1(2,2).
w_1(3,1) :- v_1(2,1), not w_1(2,2), not l_1(2,3).
w_1(4,1) :- v_1(3,1), not w_1(3,2), not l_1(2,4).
w_1(5,1) :- v_1(4,1), not w_1(4,2), not l_1(2,5).
w_1(6,1) :- v_1(5,1), not w_1(5,2), not l_1(2,6).
w_1(1,2) :- v_1(0,2), not w_1(0,3), not l_1(3,1).
w_1(2,2) :- v_1(1,2), not w_1(1,3), not l_1(3,2).
w_1(3,2) :- v_1(2,2), not w_1(2,3), not l_1(3,3).
w_1(4,2) :- v_1(3,2), not w_1(3,3), not l_1(3,4).
w_1(5,2) :- v_1(4,2), not w_1(4,3), not l_1(3,5).
w_1(6,2) :- v_1(5,2), not w_1(5,3), not l_1(3,6).
w_1(1,3) :- v_1(0,3), not w_1(0,4), not l_1(4,1).
w_1(2,3) :- v_1(1,3), not w_1(1,4), not l_1(4,2).
w_1(3,3) :- v_1(2,3), not w_1(2,4), not l_1(4,3).
w_1(4,3) :- v_1(3,3), not w_1(3,4), not l_1(4,4).
w_1(5,3) :- v_1(4,3), not w_1(4,4), not l_1(4,5).
w_1(6,3) :- v_1(5,3), not w_1(5,4), not l_1(4,6).
w_1(1,4) :- v_1(0,4), not w_1(0,5), not l_1(5,1).
w_1(2,4) :- v_1(1,4), not w_1(1,5), not l_1(5,2).
w_1(3,4) :- v_1(2,4), not w_1(2,5), not l_1(5,3).
w_1(4,4) :- v_1(3,4), not w_1(3,5), not l_1(5,4).
w_1(5,4) :- v_1(4,4), not w_1(4,5), not l_1(5,5).
w_1(6,4) :- v_1(5,4), not w_1(5,5), not l_1(5,6).
w_1(1,5) :- v_1(0,5), not w_1(0,6), not l_1(6,1).
w_1(2,5) :- v_1(1,5), not w_1(1,6), not l_1(6,2).
w_1(3,5) :- v_1(2,5), not w_1(2,6), not l_1(6,3).
w_1(4,5) :- v_1(3,5), not w_1(3,6), not l_1(6,4).
w_1(5,5) :- v_1(4,5), not w_1(4,6), not l_1(6,5).
w_1(6,5) :- v_1(5,5), not w_1(5,6), not l_1(6,6).
w_1(1,0) :- w_1(0,1), not v_1(0,0), not l_1(1,1).
w_1(2,0) :- w_1(1,1), not v_1(1,0), not l_1(1,2).
w_1(3,0) :- w_1(2,1), not v_1(2,0), not l_1(1,3).
w_1(4,0) :- w_1(3,1), not v_1(3,0), not l_1(1,4).
w_1(5,0) :- w_1(4,1), not v_1(4,0), not l_1(1,5).
w_1(6,0) :- w_1(5,1), not v_1(5,0), not l_1(1,6).
w_1(1,1) :- w_1(0,2), not v_1(0,1), not l_1(2,1).
w_1(2,1) :- w_1(1,2), not v_1(1,1), not l_1(2,2).
w_1(3,1) :- w_1(2,2), not v_1(2,1), not l_1(2,3).
w_1(4,1) :- w_1(3,2), not v_1(3,1), not l_1(2,4).
w_1(5,1) :- w_1(4,2), not v_1(4,1), not l_1(2,5).
w_1(6,1) :- w_1(5,2), not v_1(5,1), not l_1(2,6).
w_1(1,2) :- w_1(0,3), not v_1(0,2), not l_1(3,1).
w_1(2,2) :- w_1(1,3), not v_1(1,2), not l_1(3,2).
w_1(3,2) :- w_1(2,3), not v_1(2,2), not l_1(3,3).
w_1(4,2) :- w_1(3,3), not v_1(3,2), not l_1(3,4).
w_1(5,2) :- w_1(4,3), not v_1(4,2), not l_1(3,5).
w_1(6,2) :- w_1(5,3), not v_1(5,2), not l_1(3,6).
w_1(1,3) :- w_1(0,4), not v_1(0,3), not l_1(4,1).
w_1(2,3) :- w_1(1,4), not v_1(1,3), not l_1(4,2).
w_1(3,3) :- w_1(2,4), not v_1(2,3), not l_1(4,3).
w_1(4,3) :- w_1(3,4), not v_1(3,3), not l_1(4,4).
w_1(5,3) :- w_1(4,4), not v_1(4,3), not l_1(4,5).
w_1(6,3) :- w_1(5,4), not v_1(5,3), not l_1(4,6).
w_1(1,4) :- w_1(0,5), not v_1(0,4), not l_1(5,1).
w_1(2,4) :- w_1(1,5), not v_1(1,4), not l_1(5,2).
w_1(3,4) :- w_1(2,5), not v_1(2,4), not l_1(5,3).
w_1(4,4) :- w_1(3,5), not v_1(3,4), not l_1(5,4).
w_1(5,4) :- w_1(4,5), not v_1(4,4), not l_1(5,5).
w_1(6,4) :- w_1(5,5), not v_1(5,4), not l_1(5,6).
w_1(1,5) :- w_1(0,6), not v_1(0,5), not l_1(6,1).
w_1(2,5) :- w_1(1,6), not v_1(1,5), not l_1(6,2).
w_1(3,5) :- w_1(2,6), not v_1(2,5), not l_1(6,3).
w_1(4,5) :- w_1(3,6), not v_1(3,5), not l_1(6,4).
w_1(5,5) :- w_1(4,6), not v_1(4,5), not l_1(6,5).
w_1(6,5) :- w_1(5,6), not v_1(5,5), not l_1(6,6).
w_1(1,0) :- l_1(1,1), not v_1(0,0), not w_1(0,1).
w_1(2,0) :- l_1(1,2), not v_1(1,0), not w_1(1,1).
w_1(3,0) :- l_1(1,3), not v_1(2,0), not w_1(2,1).
w_1(4,0) :- l_1(1,4), not v_1(3,0), not w_1(3,1).
w_1(5,0) :- l_1(1,5), not v_1(4,0), not w_1(4,1).
w_1(6,0) :- l_1(1,6), not v_1(5,0), not w_1(5,1).
w_1(1,1) :- l_1(2,1), not v_1(0,1), not w_1(0,2).
w_1(2,1) :- l_1(2,2), not v_1(1,1), not w_1(1,2).
w_1(3,1) :- l_1(2,3), not v_1(2,1), not w_1(2,2).
w_1(4,1) :- l_1(2,4), not v_1(3,1), not w_1(3,2).
w_1(5,1) :- l_1(2,5), not v_1(4,1), not w_1(4,2).
w_1(6,1) :- l_1(2,6), not v_1(5,1), not w_1(5,2).
w_1(1,2) :- l_1(3,1), not v_1(0,2), not w_1(0,3).
w_1(2,2) :- l_1(3,2), not v_1(1,2), not w_1(1,3).
w_1(3,2) :- l_1(3,3), not v_1(2,2), not w_1(2,3).
w_1(4,2) :- l_1(3,4), not v_1(3,2), not w_1(3,3).
w_1(5,2) :- l_1(3,5), not v_1(4,2), not w_1(4,3).
w_1(6,2) :- l_1(3,6), not v_1(5,2), not w_1(5,3).
w_1(1,3) :- l_1(4,1), not v_1(0,3), not w_1(0,4).
w_1(2,3) :- l_1(4,2), not v_1(1,3), not w_1(1,4).
w_1(3,3) :- l_1(4,3), not v_1(2,3), not w_1(2,4).
w_1(4,3) :- l_1(4,4), not v_1(3,3), not w_1(3,4).
w_1(5,3) :- l_1(4,5), not v_1(4,3), not w_1(4,4).
w_1(6,3) :- l_1(4,6), not v_1(5,3), not w_1(5,4).
w_1(1,4) :- l_1(5,1), not v_1(0,4), not w_1(0,5).
w_1(2,4) :- l_1(5,2), not v_1(1,4), not w_1(1,5).
w_1(3,4) :- l_1(5,3), not v_1(2,4), not w_1(2,5).
w_1(4,4) :- l_1(5,4), not v_1(3,4), not w_1(3,5).
w_1(5,4) :- l_1(5,5), not v_1(4,4), not w_1(4,5).
w_1(6,4) :- l_1(5,6), not v_1(5,4), not w_1(5,5).
w_1(1,5) :- l_1(6,1), not v_1(0,5), not w_1(0,6).
w_1(2,5) :- l_1(6,2), not v_1(1,5), not w_1(1,6).
w_1(3,5) :- l_1(6,3), not v_1(2,5), not w_1(2,6).
w_1(4,5) :- l_1(6,4), not v_1(3,5), not w_1(3,6).
w_1(5,5) :- l_1(6,5), not v_1(4,5), not w_1(4,6).
w_1(6,5) :- l_1(6,6), not v_1(5,5), not w_1(5,6).
w_1(1,0) :- v_1(0,0), w_1(0,1), l_1(1,1).
w_1(2,0) :- v_1(1,0), w_1(1,1), l_1(1,2).
w_1(3,0) :- v_1(2,0), w_1(2,1), l_1(1,3).
w_1(4,0) :- v_1(3,0), w_1(3,1), l_1(1,4).
w_1(5,0) :- v_1(4,0), w_1(4,1), l_1(1,5).
w_1(6,0) :- v_1(5,0), w_1(5,1), l_1(1,6).
w_1(1,1) :- v_1(0,1), w_1(0,2), l_1(2,1).
w_1(2,1) :- v_1(1,1), w_1(1,2), l_1(2,2).
w_1(3,1) :- v_1(2,1), w_1(2,2), l_1(2,3).
w_1(4,1) :- v_1(3,1), w_1(3,2), l_1(2,4).
w_1(5,1) :- v_1(4,1), w_1(4,2), l_1(2,5).
w_1(6,1) :- v_1(5,1), w_1(5,2), l_1(2,6).
w_1(1,2) :- v_1(0,2), w_1(0,3), l_1(3,1).
w_1(2,2) :- v_1(1,2), w_1(1,3), l_1(3,2).
w_1(3,2) :- v_1(2,2), w_1(2,3), l_1(3,3).
w_1(4,2) :- v_1(3,2), w_1(3,3), l_1(3,4).
w_1(5,2) :- v_1(4,2), w_1(4,3), l_1(3,5).
w_1(6,2) :- v_1(5,2), w_1(5,3), l_1(3,6).
w_1(1,3) :- v_1(0,3), w_1(0,4), l_1(4,1).
w_1(2,3) :- v_1(1,3), w_1(1,4), l_1(4,2).
w_1(3,3) :- v_1(2,3), w_1(2,4), l_1(4,3).
w_1(4,3) :- v_1(3,3), w_1(3,4), l_1(4,4).
w_1(5,3) :- v_1(4,3), w_1(4,4), l_1(4,5).
w_1(6,3) :- v_1(5,3), w_1(5,4), l_1(4,6).
w_1(1,4) :- v_1(0,4), w_1(0,5), l_1(5,1).
w_1(2,4) :- v_1(1,4), w_1(1,5), l_1(5,2).
w_1(3,4) :- v_1(2,4), w_1(2,5), l_1(5,3).
w_1(4,4) :- v_1(3,4), w_1(3,5), l_1(5,4).
w_1(5,4) :- v_1(4,4), w_1(4,5), l_1(5,5).
w_1(6,4) :- v_1(5,4), w_1(5,5), l_1(5,6).
w_1(1,5) :- v_1(0,5), w_1(0,6), l_1(6,1).
w_1(2,5) :- v_1(1,5), w_1(1,6), l_1(6,2).
w_1(3,5) :- v_1(2,5), w_1(2,6), l_1(6,3).
w_1(4,5) :- v_1(3,5), w_1(3,6), l_1(6,4).
w_1(5,5) :- v_1(4,5), w_1(4,6), l_1(6,5).
w_1(6,5) :- v_1(5,5), w_1(5,6), l_1(6,6).
w_1(1,6) :- v_1(0,6), not l_1(1,7), not l_1(7,1).
w_1(2,6) :- v_1(1,6), not l_1(2,7), not l_1(7,2).
w_1(3,6) :- v_1(2,6), not l_1(3,7), not l_1(7,3).
w_1(4,6) :- v_1(3,6), not l_1(4,7), not l_1(7,4).
w_1(5,6) :- v_1(4,6), not l_1(5,7), not l_1(7,5).
w_1(6,6) :- v_1(5,6), not l_1(6,7), not l_1(7,6).
w_1(1,6) :- l_1(1,7), not v_1(0,6), not l_1(7,1).
w_1(2,6) :- l_1(2,7), not v_1(1,6), not l_1(7,2).
w_1(3,6) :- l_1(3,7), not v_1(2,6), not l_1(7,3).
w_1(4,6) :- l_1(4,7), not v_1(3,6), not l_1(7,4).
w_1(5,6) :- l_1(5,7), not v_1(4,6), not l_1(7,5).
w_1(6,6) :- l_1(6,7), not v_1(5,6), not l_1(7,6).
w_1(1,6) :- l_1(7,1), not v_1(0,6), not l_1(1,7).
w_1(2,6) :- l_1(7,2), not v_1(1,6), not l_1(2,7).
w_1(3,6) :- l_1(7,3), not v_1(2,6), not l_1(3,7).
w_1(4,6) :- l_1(7,4), not v_1(3,6), not l_1(4,7).
w_1(5,6) :- l_1(7,5), not v_1(4,6), not l_1(5,7).
w_1(6,6) :- l_1(7,6), not v_1(5,6), not l_1(6,7).
w_1(1,6) :- v_1(0,6), l_1(1,7), l_1(7,1).
w_1(2,6) :- v_1(1,6), l_1(2,7), l_1(7,2).
w_1(3,6) :- v_1(2,6), l_1(3,7), l_1(7,3).
w_1(4,6) :- v_1(3,6), l_1(4,7), l_1(7,4).
w_1(5,6) :- v_1(4,6), l_1(5,7), l_1(7,5).
w_1(6,6) :- v_1(5,6), l_1(6,7), l_1(7,6).
w_1(7,0) :- v_1(6,0), not w_1(6,1).
w_1(7,0) :- w_1(6,1), not v_1(6,0).
w_1(7,1) :- v_1(6,1), not w_1(6,2), not v_1(7,0).
w_1(7,2) :- v_1(6,2), not w_1(6,3), not v_1(7,1).
w_1(7,3) :- v_1(6,3), not w_1(6,4), not v_1(7,2).
w_1(7,4) :- v_1(6,4), not w_1(6,5), not v_1(7,3).
w_1(7,5) :- v_1(6,5), not w_1(6,6), not v_1(7,4).
w_1(7,7) :- v_1(6,7), not w_1(6,8), not v_1(7,6).
w_1(7,1) :- w_1(6,2), not v_1(6,1), not v_1(7,0).
w_1(7,2) :- w_1(6,3), not v_1(6,2), not v_1(7,1).
w_1(7,3) :- w_1(6,4), not v_1(6,3), not v_1(7,2).
w_1(7,4) :- w_1(6,5), not v_1(6,4), not v_1(7,3).
w_1(7,5) :- w_1(6,6), not v_1(6,5), not v_1(7,4).
w_1(7,7) :- w_1(6,8), not v_1(6,7), not v_1(7,6).
w_1(7,1) :- v_1(7,0), not v_1(6,1), not w_1(6,2).
w_1(7,2) :- v_1(7,1), not v_1(6,2), not w_1(6,3).
w_1(7,3) :- v_1(7,2), not v_1(6,3), not w_1(6,4).
w_1(7,4) :- v_1(7,3), not v_1(6,4), not w_1(6,5).
w_1(7,5) :- v_1(7,4), not v_1(6,5), not w_1(6,6).
w_1(7,7) :- v_1(7,6), not v_1(6,7), not w_1(6,8).
w_1(7,1) :- v_1(6,1), w_1(6,2), v_1(7,0).
w_1(7,2) :- v_1(6,2), w_1(6,3), v_1(7,1).
w_1(7,3) :- v_1(6,3), w_1(6,4), v_1(7,2).
w_1(7,4) :- v_1(6,4), w_1(6,5), v_1(7,3).
w_1(7,5) :- v_1(6,5), w_1(6,6), v_1(7,4).
w_1(7,7) :- v_1(6,7), w_1(6,8), v_1(7,6).
w_1(7,6) :- v_1(6,6), not l_1(7,7), not v_1(7,5).
w_1(7,6) :- l_1(7,7), not v_1(6,6), not v_1(7,5).
w_1(7,6) :- v_1(7,5), not v_1(6,6), not l_1(7,7).
w_1(7,6) :- v_1(6,6), l_1(7,7), v_1(7,5).
p_1(0) :- g_1(0,0).
p_1(1) :- s_1(0,0).
p_1(2) :- s_1(1,0).
p_1(3) :- s_1(2,0).
p_1(4) :- s_1(3,0).
p_1(5) :- s_1(3,1).
p_1(6) :- s_1(3,2).
p_1(7) :- h_1(3,2).
h_1(0,0) :- g_1(0,1), g_1(1,0).
h_1(0,1) :- g_1(0,2), g_1(2,0).
h_1(0,2) :- g_1(0,3), g_1(3,0).
h_1(1,0) :- g_1(1,1), h_1(0,0).
h_1(2,0) :- g_1(1,2), h_1(1,0).
h_1(1,1) :- g_1(2,1), h_1(0,1).
h_1(2,1) :- g_1(2,2), h_1(1,1).
h_1(1,0) :- g_1(1,1), s_1(0,1).
h_1(2,0) :- g_1(1,2), s_1(1,1).
h_1(1,1) :- g_1(2,1), s_1(0,2).
h_1(2,1) :- g_1(2,2), s_1(1,2).
h_1(1,0) :- h_1(0,0), s_1(0,1).
h_1(2,0) :- h_1(1,0), s_1(1,1).
h_1(1,1) :- h_1(0,1), s_1(0,2).
h_1(2,1) :- h_1(1,1), s_1(1,2).
h_1(1,2) :- h_1(0,2), g_1(1,3).
h_1(2,2) :- h_1(1,2), g_1(2,3).
h_1(1,2) :- h_1(0,2), g_1(3,1).
h_1(2,2) :- h_1(1,2), g_1(3,2).
h_1(1,2) :- g_1(1,3), g_1(3,1).
h_1(2,2) :- g_1(2,3), g_1(3,2).
h_1(3,0) :- h_1(2,0), s_1(2,1).
h_1(3,1) :- h_1(2,1), s_1(2,2).
h_1(3,3) :- h_1(2,3), s_1(2,4).
h_1(3,1) :- h_1(2,1), h_1(3,0).
h_1(3,3) :- h_1(2,3), h_1(3,2).
h_1(3,1) :- s_1(2,2), h_1(3,0).
h_1(3,3) :- s_1(2,4), h_1(3,2).
h_1(3,2) :- h_1(2,2), g_1(3,3).
h_1(3,2) :- h_1(2,2), h_1(3,1).
h_1(3,2) :- g_1(3,3), h_1(3,1).
g_1(0,0) :- m(0), f(0).
g_1(1,0) :- m(1), f(0).
g_1(2,0) :- m(2), f(0).
g_1(3,0) :- m(3), f(0).
g_1(0,1) :- m(0), f(1).
g_1(1,1) :- m(1), f(1).
g_1(2,1) :- m(2), f(1).
g_1(3,1) :- m(3), f(1).
g_1(0,2) :- m(0), f(2).
g_1(1,2) :- m(1), f(2).
g_1(2,2) :- m(2), f(2).
g_1(3,2) :- m(3), f(2).
g_1(0,3) :- m(0), f(3).
g_1(1,3) :- m(1), f(3).
g_1(2,3) :- m(2), f(3).
g_1(3,3) :- m(3), f(3).
s_1(0,0) :- g_1(0,1), not g_1(1,0).
s_1(0,1) :- g_1(0,2), not g_1(2,0).
s_1(0,2) :- g_1(0,3), not g_1(3,0).
s_1(0,0) :- g_1(1,0), not g_1(0,1).
s_1(0,1) :- g_1(2,0), not g_1(0,2).
s_1(0,2) :- g_1(3,0), not g_1(0,3).
s_1(1,0) :- h_1(0,0), not s_1(0,1), not g_1(1,1).
s_1(2,0) :- h_1(1,0), not s_1(1,1), not g_1(1,2).
s_1(1,1) :- h_1(0,1), not s_1(0,2), not g_1(2,1).
s_1(2,1) :- h_1(1,1), not s_1(1,2), not g_1(2,2).
s_1(1,0) :- s_1(0,1), not h_1(0,0), not g_1(1,1).
s_1(2,0) :- s_1(1,1), not h_1(1,0), not g_1(1,2).
s_1(1,1) :- s_1(0,2), not h_1(0,1), not g_1(2,1).
s_1(2,1) :- s_1(1,2), not h_1(1,1), not g_1(2,2).
s_1(1,0) :- g_1(1,1), not h_1(0,0), not s_1(0,1).
s_1(2,0) :- g_1(1,2), not h_1(1,0), not s_1(1,1).
s_1(1,1) :- g_1(2,1), not h_1(0,1), not s_1(0,2).
s_1(2,1) :- g_1(2,2), not h_1(1,1), not s_1(1,2).
s_1(1,0) :- h_1(0,0), s_1(0,1), g_1(1,1).
s_1(2,0) :- h_1(1,0), s_1(1,1), g_1(1,2).
s_1(1,1) :- h_1(0,1), s_1(0,2), g_1(2,1).
s_1(2,1) :- h_1(1,1), s_1(1,2), g_1(2,2).
s_1(1,2) :- h_1(0,2), not g_1(1,3), not g_1(3,1).
s_1(2,2) :- h_1(1,2), not g_1(2,3), not g_1(3,2).
s_1(1,2) :- g_1(1,3), not h_1(0,2), not g_1(3,1).
s_1(2,2) :- g_1(2,3), not h_1(1,2), not g_1(3,2).
s_1(1,2) :- g_1(3,1), not h_1(0,2), not g_1(1,3).
s_1(2,2) :- g_1(3,2), not h_1(1,2), not g_1(2,3).
s_1(1,2) :- h_1(0,2), g_1(1,3), g_1(3,1).
s_1(2,2) :- h_1(1,2), g_1(2,3), g_1(3,2).
s_1(3,0) :- h_1(2,0), not s_1(2,1).
s_1(3,0) :- s_1(2,1), not h_1(2,0).
s_1(3,1) :- h_1(2,1), not s_1(2,2), not h_1(3,0).
s_1(3,3) :- h_1(2,3), not s_1(2,4), not h_1(3,2).
s_1(3,1) :- s_1(2,2), not h_1(2,1), not h_1(3,0).
s_1(3,3) :- s_1(2,4), not h_1(2,3), not h_1(3,2).
s_1(3,1) :- h_1(3,0), not h_1(2,1), not s_1(2,2).
s_1(3,3) :- h_1(3,2), not h_1(2,3), not s_1(2,4).
s_1(3,1) :- h_1(2,1), s_1(2,2), h_1(3,0).
s_1(3,3) :- h_1(2,3), s_1(2,4), h_1(3,2).
s_1(3,2) :- h_1(2,2), not g_1(3,3), not h_1(3,1).
s_1(3,2) :- g_1(3,3), not h_1(2,2), not h_1(3,1).
s_1(3,2) :- h_1(3,1), not h_1(2,2), not g_1(3,3).
s_1(3,2) :- h_1(2,2), g_1(3,3), h_1(3,1).
m(0) :- x(0), zero.
m(1) :- x(1), zero.
m(2) :- x(2), zero.
m(3) :- x(3), zero.
m(0) :- d(0), not zero.
m(1) :- d(1), not zero.
m(2) :- d(2), not zero.
m(3) :- d(3), not zero.
zero_1 :- not x_1(4).
x_1(1) :- d_1(1), not u_1(1).
x_1(3) :- d_1(3), not u_1(3).
x_1(4) :- not d_1(4), not u_1(4).
x_1(2) :- not d_1(2), not u_1(2).
x_1(0) :- not d_1(0), not u_1(0).
x_1(1) :- u_1(1), not d_1(1).
x_1(3) :- u_1(3), not d_1(3).
x_1(4) :- d_1(4), u_1(4).
x_1(2) :- d_1(2), u_1(2).
x_1(0) :- d_1(0), u_1(0).
d_1(0) :- p_1(0), not c_1(0), not q_1(0).
d_1(1) :- p_1(1), not c_1(1), not q_1(1).
d_1(2) :- p_1(2), not c_1(2), not q_1(2).
d_1(3) :- p_1(3), not c_1(3), not q_1(3).
d_1(4) :- p_1(4), not c_1(4), not q_1(4).
d_1(0) :- c_1(0), not p_1(0), not q_1(0).
d_1(1) :- c_1(1), not p_1(1), not q_1(1).
d_1(2) :- c_1(2), not p_1(2), not q_1(2).
d_1(3) :- c_1(3), not p_1(3), not q_1(3).
d_1(4) :- c_1(4), not p_1(4), not q_1(4).
d_1(0) :- q_1(0), not p_1(0), not c_1(0).
d_1(1) :- q_1(1), not p_1(1), not c_1(1).
d_1(2) :- q_1(2), not p_1(2), not c_1(2).
d_1(3) :- q_1(3), not p_1(3), not c_1(3).
d_1(4) :- q_1(4), not p_1(4), not c_1(4).
d_1(0) :- p_1(0), c_1(0), q_1(0).
d_1(1) :- p_1(1), c_1(1), q_1(1).
d_1(2) :- p_1(2), c_1(2), q_1(2).
d_1(3) :- p_1(3), c_1(3), q_1(3).
d_1(4) :- p_1(4), c_1(4), q_1(4).
u_1(5) :- d_1(4).
u_1(3) :- d_1(2).
u_1(1) :- d_1(0).
u_1(2) :- d_1(1), u_1(1).
u_1(4) :- d_1(3), u_1(3).
u_1(5) :- u_1(4), not d_1(4).
u_1(3) :- u_1(2), not d_1(2).
u_1(1) :- u_1(0), not d_1(0).
q_1(1) :- p_1(0), c_1(0).
q_1(2) :- p_1(1), c_1(1).
q_1(3) :- p_1(2), c_1(2).
q_1(4) :- p_1(3), c_1(3).
q_1(5) :- p_1(4), c_1(4).
q_1(1) :- p_1(0), q_1(0), not c_1(0).
q_1(2) :- p_1(1), q_1(1), not c_1(1).
q_1(3) :- p_1(2), q_1(2), not c_1(2).
q_1(4) :- p_1(3), q_1(3), not c_1(3).
q_1(5) :- p_1(4), q_1(4), not c_1(4).
q_1(1) :- c_1(0), q_1(0), not p_1(0).
q_1(2) :- c_1(1), q_1(1), not p_1(1).
q_1(3) :- c_1(2), q_1(2), not p_1(2).
q_1(4) :- c_1(3), q_1(3), not p_1(3).
q_1(5) :- c_1(4), q_1(4), not p_1(4).
a(0,0) :- i(0,1), i(1,0).
a(0,1) :- i(0,2), i(2,0).
a(0,2) :- i(0,3), i(3,0).
a(0,3) :- i(0,4), i(4,0).
a(1,0) :- i(1,1), a(0,0).
a(2,0) :- i(1,2), a(1,0).
a(3,0) :- i(1,3), a(2,0).
a(1,1) :- i(2,1), a(0,1).
a(2,1) :- i(2,2), a(1,1).
a(3,1) :- i(2,3), a(2,1).
a(1,2) :- i(3,1), a(0,2).
a(2,2) :- i(3,2), a(1,2).
a(3,2) :- i(3,3), a(2,2).
a(1,0) :- i(1,1), z(0,1).
a(2,0) :- i(1,2), z(1,1).
a(3,0) :- i(1,3), z(2,1).
a(1,1) :- i(2,1), z(0,2).
a(2,1) :- i(2,2), z(1,2).
a(3,1) :- i(2,3), z(2,2).
a(1,2) :- i(3,1), z(0,3).
a(2,2) :- i(3,2), z(1,3).
a(3,2) :- i(3,3), z(2,3).
a(1,0) :- a(0,0), z(0,1).
a(2,0) :- a(1,0), z(1,1).
a(3,0) :- a(2,0), z(2,1).
a(1,1) :- a(0,1), z(0,2).
a(2,1) :- a(1,1), z(1,2).
a(3,1) :- a(2,1), z(2,2).
a(1,2) :- a(0,2), z(0,3).
a(2,2) :- a(1,2), z(1,3).
a(3,2) :- a(2,2), z(2,3).
a(1,3) :- a(0,3), i(1,4).
a(2,3) :- a(1,3), i(2,4).
a(3,3) :- a(2,3), i(3,4).
a(1,3) :- a(0,3), i(4,1).
a(2,3) :- a(1,3), i(4,2).
a(3,3) :- a(2,3), i(4,3).
a(1,3) :- i(1,4), i(4,1).
a(2,3) :- i(2,4), i(4,2).
a(3,3) :- i(3,4), i(4,3).
a(4,0) :- a(3,0), z(3,1).
a(4,1) :- a(3,1), z(3,2).
a(4,2) :- a(3,2), z(3,3).
a(4,4) :- a(3,4), z(3,5).
a(4,1) :- a(3,1), a(4,0).
a(4,2) :- a(3,2), a(4,1).
a(4,4) :- a(3,4), a(4,3).
a(4,1) :- z(3,2), a(4,0).
a(4,2) :- z(3,3), a(4,1).
a(4,4) :- z(3,5), a(4,3).
a(4,3) :- a(3,3), i(4,4).
a(4,3) :- a(3,3), a(4,2).
a(4,3) :- i(4,4), a(4,2).
i(0,4) :- k(0).
i(1,4) :- k(1).
i(2,4) :- k(2).
i(3,4) :- k(3).
i(4,4) :- k(4).
i(0,2) :- k(0).
i(1,2) :- k(1).
i(2,2) :- k(2).
i(3,2) :- k(3).
i(4,2) :- k(4).
i(0,0) :- k(0).
i(1,0) :- k(1).
i(2,0) :- k(2).
i(3,0) :- k(3).
i(4,0) :- k(4).
z(0,0) :- i(0,1), not i(1,0).
z(0,1) :- i(0,2), not i(2,0).
z(0,2) :- i(0,3), not i(3,0).
z(0,3) :- i(0,4), not i(4,0).
z(0,0) :- i(1,0), not i(0,1).
z(0,1) :- i(2,0), not i(0,2).
z(0,2) :- i(3,0), not i(0,3).
z(0,3) :- i(4,0), not i(0,4).
z(1,0) :- a(0,0), not z(0,1), not i(1,1).
z(2,0) :- a(1,0), not z(1,1), not i(1,2).
z(3,0) :- a(2,0), not z(2,1), not i(1,3).
z(1,1) :- a(0,1), not z(0,2), not i(2,1).
z(2,1) :- a(1,1), not z(1,2), not i(2,2).
z(3,1) :- a(2,1), not z(2,2), not i(2,3).
z(1,2) :- a(0,2), not z(0,3), not i(3,1).
z(2,2) :- a(1,2), not z(1,3), not i(3,2).
z(3,2) :- a(2,2), not z(2,3), not i(3,3).
z(1,0) :- z(0,1), not a(0,0), not i(1,1).
z(2,0) :- z(1,1), not a(1,0), not i(1,2).
z(3,0) :- z(2,1), not a(2,0), not i(1,3).
z(1,1) :- z(0,2), not a(0,1), not i(2,1).
z(2,1) :- z(1,2), not a(1,1), not i(2,2).
z(3,1) :- z(2,2), not a(2,1), not i(2,3).
z(1,2) :- z(0,3), not a(0,2), not i(3,1).
z(2,2) :- z(1,3), not a(1,2), not i(3,2).
z(3,2) :- z(2,3), not a(2,2), not i(3,3).
z(1,0) :- i(1,1), not a(0,0), not z(0,1).
z(2,0) :- i(1,2), not a(1,0), not z(1,1).
z(3,0) :- i(1,3), not a(2,0), not z(2,1).
z(1,1) :- i(2,1), not a(0,1), not z(0,2).
z(2,1) :- i(2,2), not a(1,1), not z(1,2).
z(3,1) :- i(2,3), not a(2,1), not z(2,2).
z(1,2) :- i(3,1), not a(0,2), not z(0,3).
z(2,2) :- i(3,2), not a(1,2), not z(1,3).
z(3,2) :- i(3,3), not a(2,2), not z(2,3).
z(1,0) :- a(0,0), z(0,1), i(1,1).
z(2,0) :- a(1,0), z(1,1), i(1,2).
z(3,0) :- a(2,0), z(2,1), i(1,3).
z(1,1) :- a(0,1), z(0,2), i(2,1).
z(2,1) :- a(1,1), z(1,2), i(2,2).
z(3,1) :- a(2,1), z(2,2), i(2,3).
z(1,2) :- a(0,2), z(0,3), i(3,1).
z(2,2) :- a(1,2), z(1,3), i(3,2).
z(3,2) :- a(2,2), z(2,3), i(3,3).
z(1,3) :- a(0,3), not i(1,4), not i(4,1).
z(2,3) :- a(1,3), not i(2,4), not i(4,2).
z(3,3) :- a(2,3), not i(3,4), not i(4,3).
z(1,3) :- i(1,4), not a(0,3), not i(4,1).
z(2,3) :- i(2,4), not a(1,3), not i(4,2).
z(3,3) :- i(3,4), not a(2,3), not i(4,3).
z(1,3) :- i(4,1), not a(0,3), not i(1,4).
z(2,3) :- i(4,2), not a(1,3), not i(2,4).
z(3,3) :- i(4,3), not a(2,3), not i(3,4).
z(1,3) :- a(0,3), i(1,4), i(4,1).
z(2,3) :- a(1,3), i(2,4), i(4,2).
z(3,3) :- a(2,3), i(3,4), i(4,3).
z(4,0) :- a(3,0), not z(3,1).
z(4,0) :- z(3,1), not a(3,0).
z(4,1) :- a(3,1), not z(3,2), not a(4,0).
z(4,2) :- a(3,2), not z(3,3), not a(4,1).
z(4,4) :- a(3,4), not z(3,5), not a(4,3).
z(4,1) :- z(3,2), not a(3,1), not a(4,0).
z(4,2) :- z(3,3), not a(3,2), not a(4,1).
z(4,4) :- z(3,5), not a(3,4), not a(4,3).
z(4,1) :- a(4,0), not a(3,1), not z(3,2).
z(4,2) :- a(4,1), not a(3,2), not z(3,3).
z(4,4) :- a(4,3), not a(3,4), not z(3,5).
z(4,1) :- a(3,1), z(3,2), a(4,0).
z(4,2) :- a(3,2), z(3,3), a(4,1).
z(4,4) :- a(3,4), z(3,5), a(4,3).
z(4,3) :- a(3,3), not i(4,4), not a(4,2).
z(4,3) :- i(4,4), not a(3,3), not a(4,2).
z(4,3) :- a(4,2), not a(3,3), not i(4,4).
z(4,3) :- a(3,3), i(4,4), a(4,2).
k(0) :- r(8).
k(1) :- r(9).
k(2) :- r(10).
k(3) :- r(11).
k(4) :- r(12).
c(0) :- i(0,0).
c(1) :- z(0,0).
c(2) :- z(1,0).
c(3) :- z(2,0).
c(4) :- z(3,0).
c(5) :- z(4,0).
c(6) :- z(4,1).
c(7) :- z(4,2).
c(8) :- z(4,3).
c(9) :- a(4,3).
r(0) :- l(0,0).
r(1) :- w(0,0).
r(2) :- w(1,0).
r(3) :- w(2,0).
r(4) :- w(3,0).
r(5) :- w(4,0).
r(6) :- w(5,0).
r(7) :- w(6,0).
r(8) :- w(7,0).
r(9) :- w(7,1).
r(10) :- w(7,2).
r(11) :- w(7,3).
r(12) :- w(7,4).
v(0,0) :- l(0,1), l(1,0).
v(0,1) :- l(0,2), l(2,0).
v(0,2) :- l(0,3), l(3,0).
v(0,3) :- l(0,4), l(4,0).
v(0,4) :- l(0,5), l(5,0).
v(0,5) :- l(0,6), l(6,0).
v(0,6) :- l(0,7), l(7,0).
v(1,0) :- l(1,1), v(0,0).
v(2,0) :- l(1,2), v(1,0).
v(3,0) :- l(1,3), v(2,0).
v(4,0) :- l(1,4), v(3,0).
v(5,0) :- l(1,5), v(4,0).
v(6,0) :- l(1,6), v(5,0).
v(1,1) :- l(2,1), v(0,1).
v(2,1) :- l(2,2), v(1,1).
v(3,1) :- l(2,3), v(2,1).
v(4,1) :- l(2,4), v(3,1).
v(5,1) :- l(2,5), v(4,1).
v(6,1) :- l(2,6), v(5,1).
v(1,2) :- l(3,1), v(0,2).
v(2,2) :- l(3,2), v(1,2).
v(3,2) :- l(3,3), v(2,2).
v(4,2) :- l(3,4), v(3,2).
v(5,2) :- l(3,5), v(4,2).
v(6,2) :- l(3,6), v(5,2).
v(1,3) :- l(4,1), v(0,3).
v(2,3) :- l(4,2), v(1,3).
v(3,3) :- l(4,3), v(2,3).
v(4,3) :- l(4,4), v(3,3).
v(5,3) :- l(4,5), v(4,3).
v(6,3) :- l(4,6), v(5,3).
v(1,4) :- l(5,1), v(0,4).
v(2,4) :- l(5,2), v(1,4).
v(3,4) :- l(5,3), v(2,4).
v(4,4) :- l(5,4), v(3,4).
v(5,4) :- l(5,5), v(4,4).
v(6,4) :- l(5,6), v(5,4).
v(1,5) :- l(6,1), v(0,5).
v(2,5) :- l(6,2), v(1,5).
v(3,5) :- l(6,3), v(2,5).
v(4,5) :- l(6,4), v(3,5).
v(5,5) :- l(6,5), v(4,5).
v(6,5) :- l(6,6), v(5,5).
v(1,0) :- l(1,1), w(0,1).
v(2,0) :- l(1,2), w(1,1).
v(3,0) :- l(1,3), w(2,1).
v(4,0) :- l(1,4), w(3,1).
v(5,0) :- l(1,5), w(4,1).
v(6,0) :- l(1,6), w(5,1).
v(1,1) :- l(2,1), w(0,2).
v(2,1) :- l(2,2), w(1,2).
v(3,1) :- l(2,3), w(2,2).
v(4,1) :- l(2,4), w(3,2).
v(5,1) :- l(2,5), w(4,2).
v(6,1) :- l(2,6), w(5,2).
v(1,2) :- l(3,1), w(0,3).
v(2,2) :- l(3,2), w(1,3).
v(3,2) :- l(3,3), w(2,3).
v(4,2) :- l(3,4), w(3,3).
v(5,2) :- l(3,5), w(4,3).
v(6,2) :- l(3,6), w(5,3).
v(1,3) :- l(4,1), w(0,4).
v(2,3) :- l(4,2), w(1,4).
v(3,3) :- l(4,3), w(2,4).
v(4,3) :- l(4,4), w(3,4).
v(5,3) :- l(4,5), w(4,4).
v(6,3) :- l(4,6), w(5,4).
v(1,4) :- l(5,1), w(0,5).
v(2,4) :- l(5,2), w(1,5).
v(3,4) :- l(5,3), w(2,5).
v(4,4) :- l(5,4), w(3,5).
v(5,4) :- l(5,5), w(4,5).
v(6,4) :- l(5,6), w(5,5).
v(1,5) :- l(6,1), w(0,6).
v(2,5) :- l(6,2), w(1,6).
v(3,5) :- l(6,3), w(2,6).
v(4,5) :- l(6,4), w(3,6).
v(5,5) :- l(6,5), w(4,6).
v(6,5) :- l(6,6), w(5,6).
v(1,0) :- v(0,0), w(0,1).
v(2,0) :- v(1,0), w(1,1).
v(3,0) :- v(2,0), w(2,1).
v(4,0) :- v(3,0), w(3,1).
v(5,0) :- v(4,0), w(4,1).
v(6,0) :- v(5,0), w(5,1).
v(1,1) :- v(0,1), w(0,2).
v(2,1) :- v(1,1), w(1,2).
v(3,1) :- v(2,1), w(2,2).
v(4,1) :- v(3,1), w(3,2).
v(5,1) :- v(4,1), w(4,2).
v(6,1) :- v(5,1), w(5,2).
v(1,2) :- v(0,2), w(0,3).
v(2,2) :- v(1,2), w(1,3).
v(3,2) :- v(2,2), w(2,3).
v(4,2) :- v(3,2), w(3,3).
v(5,2) :- v(4,2), w(4,3).
v(6,2) :- v(5,2), w(5,3).
v(1,3) :- v(0,3), w(0,4).
v(2,3) :- v(1,3), w(1,4).
v(3,3) :- v(2,3), w(2,4).
v(4,3) :- v(3,3), w(3,4).
v(5,3) :- v(4,3), w(4,4).
v(6,3) :- v(5,3), w(5,4).
v(1,4) :- v(0,4), w(0,5).
v(2,4) :- v(1,4), w(1,5).
v(3,4) :- v(2,4), w(2,5).
v(4,4) :- v(3,4), w(3,5).
v(5,4) :- v(4,4), w(4,5).
v(6,4) :- v(5,4), w(5,5).
v(1,5) :- v(0,5), w(0,6).
v(2,5) :- v(1,5), w(1,6).
v(3,5) :- v(2,5), w(2,6).
v(4,5) :- v(3,5), w(3,6).
v(5,5) :- v(4,5), w(4,6).
v(6,5) :- v(5,5), w(5,6).
v(1,6) :- v(0,6), l(1,7).
v(2,6) :- v(1,6), l(2,7).
v(3,6) :- v(2,6), l(3,7).
v(4,6) :- v(3,6), l(4,7).
v(5,6) :- v(4,6), l(5,7).
v(6,6) :- v(5,6), l(6,7).
v(1,6) :- v(0,6), l(7,1).
v(2,6) :- v(1,6), l(7,2).
v(3,6) :- v(2,6), l(7,3).
v(4,6) :- v(3,6), l(7,4).
v(5,6) :- v(4,6), l(7,5).
v(6,6) :- v(5,6), l(7,6).
v(1,6) :- l(1,7), l(7,1).
v(2,6) :- l(2,7), l(7,2).
v(3,6) :- l(3,7), l(7,3).
v(4,6) :- l(4,7), l(7,4).
v(5,6) :- l(5,7), l(7,5).
v(6,6) :- l(6,7), l(7,6).
v(7,0) :- v(6,0), w(6,1).
v(7,1) :- v(6,1), w(6,2).
v(7,2) :- v(6,2), w(6,3).
v(7,3) :- v(6,3), w(6,4).
v(7,4) :- v(6,4), w(6,5).
v(7,5) :- v(6,5), w(6,6).
v(7,7) :- v(6,7), w(6,8).
v(7,1) :- v(6,1), v(7,0).
v(7,2) :- v(6,2), v(7,1).
v(7,3) :- v(6,3), v(7,2).
v(7,4) :- v(6,4), v(7,3).
v(7,5) :- v(6,5), v(7,4).
v(7,7) :- v(6,7), v(7,6).
v(7,1) :- w(6,2), v(7,0).
v(7,2) :- w(6,3), v(7,1).
v(7,3) :- w(6,4), v(7,2).
v(7,4) :- w(6,5), v(7,3).
v(7,5) :- w(6,6), v(7,4).
v(7,7) :- w(6,8), v(7,6).
v(7,6) :- v(6,6), l(7,7).
v(7,6) :- v(6,6), v(7,5).
v(7,6) :- l(7,7), v(7,5).
l(0,4) :- p(0).
l(1,4) :- p(1).
l(2,4) :- p(2).
l(3,4) :- p(3).
l(4,4) :- p(4).
l(5,4) :- p(5).
l(6,4) :- p(6).
l(7,4) :- p(7).
l(0,2) :- p(0).
l(1,2) :- p(1).
l(2,2) :- p(2).
l(3,2) :- p(3).
l(4,2) :- p(4).
l(5,2) :- p(5).
l(6,2) :- p(6).
l(7,2) :- p(7).
l(0,1) :- p(0).
l(1,1) :- p(1).
l(2,1) :- p(2).
l(3,1) :- p(3).
l(4,1) :- p(4).
l(5,1) :- p(5).
l(6,1) :- p(6).
l(7,1) :- p(7).
l(0,0) :- p(0).
l(1,0) :- p(1).
l(2,0) :- p(2).
l(3,0) :- p(3).
l(4,0) :- p(4).
l(5,0) :- p(5).
l(6,0) :- p(6).
l(7,0) :- p(7).
w(0,0) :- l(0,1), not l(1,0).
w(0,1) :- l(0,2), not l(2,0).
w(0,2) :- l(0,3), not l(3,0).
w(0,3) :- l(0,4), not l(4,0).
w(0,4) :- l(0,5), not l(5,0).
w(0,5) :- l(0,6), not l(6,0).
w(0,6) :- l(0,7), not l(7,0).
w(0,0) :- l(1,0), not l(0,1).
w(0,1) :- l(2,0), not l(0,2).
w(0,2) :- l(3,0), not l(0,3).
w(0,3) :- l(4,0), not l(0,4).
w(0,4) :- l(5,0), not l(0,5).
w(0,5) :- l(6,0), not l(0,6).
w(0,6) :- l(7,0), not l(0,7).
w(1,0) :- v(0,0), not w(0,1), not l(1,1).
w(2,0) :- v(1,0), not w(1,1), not l(1,2).
w(3,0) :- v(2,0), not w(2,1), not l(1,3).
w(4,0) :- v(3,0), not w(3,1), not l(1,4).
w(5,0) :- v(4,0), not w(4,1), not l(1,5).
w(6,0) :- v(5,0), not w(5,1), not l(1,6).
w(1,1) :- v(0,1), not w(0,2), not l(2,1).
w(2,1) :- v(1,1), not w(1,2), not l(2,2).
w(3,1) :- v(2,1), not w(2,2), not l(2,3).
w(4,1) :- v(3,1), not w(3,2), not l(2,4).
w(5,1) :- v(4,1), not w(4,2), not l(2,5).
w(6,1) :- v(5,1), not w(5,2), not l(2,6).
w(1,2) :- v(0,2), not w(0,3), not l(3,1).
w(2,2) :- v(1,2), not w(1,3), not l(3,2).
w(3,2) :- v(2,2), not w(2,3), not l(3,3).
w(4,2) :- v(3,2), not w(3,3), not l(3,4).
w(5,2) :- v(4,2), not w(4,3), not l(3,5).
w(6,2) :- v(5,2), not w(5,3), not l(3,6).
w(1,3) :- v(0,3), not w(0,4), not l(4,1).
w(2,3) :- v(1,3), not w(1,4), not l(4,2).
w(3,3) :- v(2,3), not w(2,4), not l(4,3).
w(4,3) :- v(3,3), not w(3,4), not l(4,4).
w(5,3) :- v(4,3), not w(4,4), not l(4,5).
w(6,3) :- v(5,3), not w(5,4), not l(4,6).
w(1,4) :- v(0,4), not w(0,5), not l(5,1).
w(2,4) :- v(1,4), not w(1,5), not l(5,2).
w(3,4) :- v(2,4), not w(2,5), not l(5,3).
w(4,4) :- v(3,4), not w(3,5), not l(5,4).
w(5,4) :- v(4,4), not w(4,5), not l(5,5).
w(6,4) :- v(5,4), not w(5,5), not l(5,6).
w(1,5) :- v(0,5), not w(0,6), not l(6,1).
w(2,5) :- v(1,5), not w(1,6), not l(6,2).
w(3,5) :- v(2,5), not w(2,6), not l(6,3).
w(4,5) :- v(3,5), not w(3,6), not l(6,4).
w(5,5) :- v(4,5), not w(4,6), not l(6,5).
w(6,5) :- v(5,5), not w(5,6), not l(6,6).
w(1,0) :- w(0,1), not v(0,0), not l(1,1).
w(2,0) :- w(1,1), not v(1,0), not l(1,2).
w(3,0) :- w(2,1), not v(2,0), not l(1,3).
w(4,0) :- w(3,1), not v(3,0), not l(1,4).
w(5,0) :- w(4,1), not v(4,0), not l(1,5).
w(6,0) :- w(5,1), not v(5,0), not l(1,6).
w(1,1) :- w(0,2), not v(0,1), not l(2,1).
w(2,1) :- w(1,2), not v(1,1), not l(2,2).
w(3,1) :- w(2,2), not v(2,1), not l(2,3).
w(4,1) :- w(3,2), not v(3,1), not l(2,4).
w(5,1) :- w(4,2), not v(4,1), not l(2,5).
w(6,1) :- w(5,2), not v(5,1), not l(2,6).
w(1,2) :- w(0,3), not v(0,2), not l(3,1).
w(2,2) :- w(1,3), not v(1,2), not l(3,2).
w(3,2) :- w(2,3), not v(2,2), not l(3,3).
w(4,2) :- w(3,3), not v(3,2), not l(3,4).
w(5,2) :- w(4,3), not v(4,2), not l(3,5).
w(6,2) :- w(5,3), not v(5,2), not l(3,6).
w(1,3) :- w(0,4), not v(0,3), not l(4,1).
w(2,3) :- w(1,4), not v(1,3), not l(4,2).
w(3,3) :- w(2,4), not v(2,3), not l(4,3).
w(4,3) :- w(3,4), not v(3,3), not l(4,4).
w(5,3) :- w(4,4), not v(4,3), not l(4,5).
w(6,3) :- w(5,4), not v(5,3), not l(4,6).
w(1,4) :- w(0,5), not v(0,4), not l(5,1).
w(2,4) :- w(1,5), not v(1,4), not l(5,2).
w(3,4) :- w(2,5), not v(2,4), not l(5,3).
w(4,4) :- w(3,5), not v(3,4), not l(5,4).
w(5,4) :- w(4,5), not v(4,4), not l(5,5).
w(6,4) :- w(5,5), not v(5,4), not l(5,6).
w(1,5) :- w(0,6), not v(0,5), not l(6,1).
w(2,5) :- w(1,6), not v(1,5), not l(6,2).
w(3,5) :- w(2,6), not v(2,5), not l(6,3).
w(4,5) :- w(3,6), not v(3,5), not l(6,4).
w(5,5) :- w(4,6), not v(4,5), not l(6,5).
w(6,5) :- w(5,6), not v(5,5), not l(6,6).
w(1,0) :- l(1,1), not v(0,0), not w(0,1).
w(2,0) :- l(1,2), not v(1,0), not w(1,1).
w(3,0) :- l(1,3), not v(2,0), not w(2,1).
w(4,0) :- l(1,4), not v(3,0), not w(3,1).
w(5,0) :- l(1,5), not v(4,0), not w(4,1).
w(6,0) :- l(1,6), not v(5,0), not w(5,1).
w(1,1) :- l(2,1), not v(0,1), not w(0,2).
w(2,1) :- l(2,2), not v(1,1), not w(1,2).
w(3,1) :- l(2,3), not v(2,1), not w(2,2).
w(4,1) :- l(2,4), not v(3,1), not w(3,2).
w(5,1) :- l(2,5), not v(4,1), not w(4,2).
w(6,1) :- l(2,6), not v(5,1), not w(5,2).
w(1,2) :- l(3,1), not v(0,2), not w(0,3).
w(2,2) :- l(3,2), not v(1,2), not w(1,3).
w(3,2) :- l(3,3), not v(2,2), not w(2,3).
w(4,2) :- l(3,4), not v(3,2), not w(3,3).
w(5,2) :- l(3,5), not v(4,2), not w(4,3).
w(6,2) :- l(3,6), not v(5,2), not w(5,3).
w(1,3) :- l(4,1), not v(0,3), not w(0,4).
w(2,3) :- l(4,2), not v(1,3), not w(1,4).
w(3,3) :- l(4,3), not v(2,3), not w(2,4).
w(4,3) :- l(4,4), not v(3,3), not w(3,4).
w(5,3) :- l(4,5), not v(4,3), not w(4,4).
w(6,3) :- l(4,6), not v(5,3), not w(5,4).
w(1,4) :- l(5,1), not v(0,4), not w(0,5).
w(2,4) :- l(5,2), not v(1,4), not w(1,5).
w(3,4) :- l(5,3), not v(2,4), not w(2,5).
w(4,4) :- l(5,4), not v(3,4), not w(3,5).
w(5,4) :- l(5,5), not v(4,4), not w(4,5).
w(6,4) :- l(5,6), not v(5,4), not w(5,5).
w(1,5) :- l(6,1), not v(0,5), not w(0,6).
w(2,5) :- l(6,2), not v(1,5), not w(1,6).
w(3,5) :- l(6,3), not v(2,5), not w(2,6).
w(4,5) :- l(6,4), not v(3,5), not w(3,6).
w(5,5) :- l(6,5), not v(4,5), not w(4,6).
w(6,5) :- l(6,6), not v(5,5), not w(5,6).
w(1,0) :- v(0,0), w(0,1), l(1,1).
w(2,0) :- v(1,0), w(1,1), l(1,2).
w(3,0) :- v(2,0), w(2,1), l(1,3).
w(4,0) :- v(3,0), w(3,1), l(1,4).
w(5,0) :- v(4,0), w(4,1), l(1,5).
w(6,0) :- v(5,0), w(5,1), l(1,6).
w(1,1) :- v(0,1), w(0,2), l(2,1).
w(2,1) :- v(1,1), w(1,2), l(2,2).
w(3,1) :- v(2,1), w(2,2), l(2,3).
w(4,1) :- v(3,1), w(3,2), l(2,4).
w(5,1) :- v(4,1), w(4,2), l(2,5).
w(6,1) :- v(5,1), w(5,2), l(2,6).
w(1,2) :- v(0,2), w(0,3), l(3,1).
w(2,2) :- v(1,2), w(1,3), l(3,2).
w(3,2) :- v(2,2), w(2,3), l(3,3).
w(4,2) :- v(3,2), w(3,3), l(3,4).
w(5,2) :- v(4,2), w(4,3), l(3,5).
w(6,2) :- v(5,2), w(5,3), l(3,6).
w(1,3) :- v(0,3), w(0,4), l(4,1).
w(2,3) :- v(1,3), w(1,4), l(4,2).
w(3,3) :- v(2,3), w(2,4), l(4,3).
w(4,3) :- v(3,3), w(3,4), l(4,4).
w(5,3) :- v(4,3), w(4,4), l(4,5).
w(6,3) :- v(5,3), w(5,4), l(4,6).
w(1,4) :- v(0,4), w(0,5), l(5,1).
w(2,4) :- v(1,4), w(1,5), l(5,2).
w(3,4) :- v(2,4), w(2,5), l(5,3).
w(4,4) :- v(3,4), w(3,5), l(5,4).
w(5,4) :- v(4,4), w(4,5), l(5,5).
w(6,4) :- v(5,4), w(5,5), l(5,6).
w(1,5) :- v(0,5), w(0,6), l(6,1).
w(2,5) :- v(1,5), w(1,6), l(6,2).
w(3,5) :- v(2,5), w(2,6), l(6,3).
w(4,5) :- v(3,5), w(3,6), l(6,4).
w(5,5) :- v(4,5), w(4,6), l(6,5).
w(6,5) :- v(5,5), w(5,6), l(6,6).
w(1,6) :- v(0,6), not l(1,7), not l(7,1).
w(2,6) :- v(1,6), not l(2,7), not l(7,2).
w(3,6) :- v(2,6), not l(3,7), not l(7,3).
w(4,6) :- v(3,6), not l(4,7), not l(7,4).
w(5,6) :- v(4,6), not l(5,7), not l(7,5).
w(6,6) :- v(5,6), not l(6,7), not l(7,6).
w(1,6) :- l(1,7), not v(0,6), not l(7,1).
w(2,6) :- l(2,7), not v(1,6), not l(7,2).
w(3,6) :- l(3,7), not v(2,6), not l(7,3).
w(4,6) :- l(4,7), not v(3,6), not l(7,4).
w(5,6) :- l(5,7), not v(4,6), not l(7,5).
w(6,6) :- l(6,7), not v(5,6), not l(7,6).
w(1,6) :- l(7,1), not v(0,6), not l(1,7).
w(2,6) :- l(7,2), not v(1,6), not l(2,7).
w(3,6) :- l(7,3), not v(2,6), not l(3,7).
w(4,6) :- l(7,4), not v(3,6), not l(4,7).
w(5,6) :- l(7,5), not v(4,6), not l(5,7).
w(6,6) :- l(7,6), not v(5,6), not l(6,7).
w(1,6) :- v(0,6), l(1,7), l(7,1).
w(2,6) :- v(1,6), l(2,7), l(7,2).
w(3,6) :- v(2,6), l(3,7), l(7,3).
w(4,6) :- v(3,6), l(4,7), l(7,4).
w(5,6) :- v(4,6), l(5,7), l(7,5).
w(6,6) :- v(5,6), l(6,7), l(7,6).
w(7,0) :- v(6,0), not w(6,1).
w(7,0) :- w(6,1), not v(6,0).
w(7,1) :- v(6,1), not w(6,2), not v(7,0).
w(7,2) :- v(6,2), not w(6,3), not v(7,1).
w(7,3) :- v(6,3), not w(6,4), not v(7,2).
w(7,4) :- v(6,4), not w(6,5), not v(7,3).
w(7,5) :- v(6,5), not w(6,6), not v(7,4).
w(7,7) :- v(6,7), not w(6,8), not v(7,6).
w(7,1) :- w(6,2), not v(6,1), not v(7,0).
w(7,2) :- w(6,3), not v(6,2), not v(7,1).
w(7,3) :- w(6,4), not v(6,3), not v(7,2).
w(7,4) :- w(6,5), not v(6,4), not v(7,3).
w(7,5) :- w(6,6), not v(6,5), not v(7,4).
w(7,7) :- w(6,8), not v(6,7), not v(7,6).
w(7,1) :- v(7,0), not v(6,1), not w(6,2).
w(7,2) :- v(7,1), not v(6,2), not w(6,3).
w(7,3) :- v(7,2), not v(6,3), not w(6,4).
w(7,4) :- v(7,3), not v(6,4), not w(6,5).
w(7,5) :- v(7,4), not v(6,5), not w(6,6).
w(7,7) :- v(7,6), not v(6,7), not w(6,8).
w(7,1) :- v(6,1), w(6,2), v(7,0).
w(7,2) :- v(6,2), w(6,3), v(7,1).
w(7,3) :- v(6,3), w(6,4), v(7,2).
w(7,4) :- v(6,4), w(6,5), v(7,3).
w(7,5) :- v(6,5), w(6,6), v(7,4).
w(7,7) :- v(6,7), w(6,8), v(7,6).
w(7,6) :- v(6,6), not l(7,7), not v(7,5).
w(7,6) :- l(7,7), not v(6,6), not v(7,5).
w(7,6) :- v(7,5), not v(6,6), not l(7,7).
w(7,6) :- v(6,6), l(7,7), v(7,5).
p(0) :- g(0,0).
p(1) :- s(0,0).
p(2) :- s(1,0).
p(3) :- s(2,0).
p(4) :- s(3,0).
p(5) :- s(3,1).
p(6) :- s(3,2).
p(7) :- h(3,2).
h(0,0) :- g(0,1), g(1,0).
h(0,1) :- g(0,2), g(2,0).
h(0,2) :- g(0,3), g(3,0).
h(1,0) :- g(1,1), h(0,0).
h(2,0) :- g(1,2), h(1,0).
h(1,1) :- g(2,1), h(0,1).
h(2,1) :- g(2,2), h(1,1).
h(1,0) :- g(1,1), s(0,1).
h(2,0) :- g(1,2), s(1,1).
h(1,1) :- g(2,1), s(0,2).
h(2,1) :- g(2,2), s(1,2).
h(1,0) :- h(0,0), s(0,1).
h(2,0) :- h(1,0), s(1,1).
h(1,1) :- h(0,1), s(0,2).
h(2,1) :- h(1,1), s(1,2).
h(1,2) :- h(0,2), g(1,3).
h(2,2) :- h(1,2), g(2,3).
h(1,2) :- h(0,2), g(3,1).
h(2,2) :- h(1,2), g(3,2).
h(1,2) :- g(1,3), g(3,1).
h(2,2) :- g(2,3), g(3,2).
h(3,0) :- h(2,0), s(2,1).
h(3,1) :- h(2,1), s(2,2).
h(3,3) :- h(2,3), s(2,4).
h(3,1) :- h(2,1), h(3,0).
h(3,3) :- h(2,3), h(3,2).
h(3,1) :- s(2,2), h(3,0).
h(3,3) :- s(2,4), h(3,2).
h(3,2) :- h(2,2), g(3,3).
h(3,2) :- h(2,2), h(3,1).
h(3,2) :- g(3,3), h(3,1).
g(0,0) :- f(0), f(0).
g(1,0) :- f(1), f(0).
g(2,0) :- f(2), f(0).
g(3,0) :- f(3), f(0).
g(0,1) :- f(0), f(1).
g(1,1) :- f(1), f(1).
g(2,1) :- f(2), f(1).
g(3,1) :- f(3), f(1).
g(0,2) :- f(0), f(2).
g(1,2) :- f(1), f(2).
g(2,2) :- f(2), f(2).
g(3,2) :- f(3), f(2).
g(0,3) :- f(0), f(3).
g(1,3) :- f(1), f(3).
g(2,3) :- f(2), f(3).
g(3,3) :- f(3), f(3).
s(0,0) :- g(0,1), not g(1,0).
s(0,1) :- g(0,2), not g(2,0).
s(0,2) :- g(0,3), not g(3,0).
s(0,0) :- g(1,0), not g(0,1).
s(0,1) :- g(2,0), not g(0,2).
s(0,2) :- g(3,0), not g(0,3).
s(1,0) :- h(0,0), not s(0,1), not g(1,1).
s(2,0) :- h(1,0), not s(1,1), not g(1,2).
s(1,1) :- h(0,1), not s(0,2), not g(2,1).
s(2,1) :- h(1,1), not s(1,2), not g(2,2).
s(1,0) :- s(0,1), not h(0,0), not g(1,1).
s(2,0) :- s(1,1), not h(1,0), not g(1,2).
s(1,1) :- s(0,2), not h(0,1), not g(2,1).
s(2,1) :- s(1,2), not h(1,1), not g(2,2).
s(1,0) :- g(1,1), not h(0,0), not s(0,1).
s(2,0) :- g(1,2), not h(1,0), not s(1,1).
s(1,1) :- g(2,1), not h(0,1), not s(0,2).
s(2,1) :- g(2,2), not h(1,1), not s(1,2).
s(1,0) :- h(0,0), s(0,1), g(1,1).
s(2,0) :- h(1,0), s(1,1), g(1,2).
s(1,1) :- h(0,1), s(0,2), g(2,1).
s(2,1) :- h(1,1), s(1,2), g(2,2).
s(1,2) :- h(0,2), not g(1,3), not g(3,1).
s(2,2) :- h(1,2), not g(2,3), not g(3,2).
s(1,2) :- g(1,3), not h(0,2), not g(3,1).
s(2,2) :- g(2,3), not h(1,2), not g(3,2).
s(1,2) :- g(3,1), not h(0,2), not g(1,3).
s(2,2) :- g(3,2), not h(1,2), not g(2,3).
s(1,2) :- h(0,2), g(1,3), g(3,1).
s(2,2) :- h(1,2), g(2,3), g(3,2).
s(3,0) :- h(2,0), not s(2,1).
s(3,0) :- s(2,1), not h(2,0).
s(3,1) :- h(2,1), not s(2,2), not h(3,0).
s(3,3) :- h(2,3), not s(2,4), not h(3,2).
s(3,1) :- s(2,2), not h(2,1), not h(3,0).
s(3,3) :- s(2,4), not h(2,3), not h(3,2).
s(3,1) :- h(3,0), not h(2,1), not s(2,2).
s(3,3) :- h(3,2), not h(2,3), not s(2,4).
s(3,1) :- h(2,1), s(2,2), h(3,0).
s(3,3) :- h(2,3), s(2,4), h(3,2).
s(3,2) :- h(2,2), not g(3,3), not h(3,1).
s(3,2) :- g(3,3), not h(2,2), not h(3,1).
s(3,2) :- h(3,1), not h(2,2), not g(3,3).
s(3,2) :- h(2,2), g(3,3), h(3,1).
zero :- not x(4).
x(1) :- d(1), not u(1).
x(3) :- d(3), not u(3).
x(4) :- not d(4), not u(4).
x(2) :- not d(2), not u(2).
x(0) :- not d(0), not u(0).
x(1) :- u(1), not d(1).
x(3) :- u(3), not d(3).
x(4) :- d(4), u(4).
x(2) :- d(2), u(2).
x(0) :- d(0), u(0).
d(0) :- p(0), not c(0), not q(0).
d(1) :- p(1), not c(1), not q(1).
d(2) :- p(2), not c(2), not q(2).
d(3) :- p(3), not c(3), not q(3).
d(4) :- p(4), not c(4), not q(4).
d(0) :- c(0), not p(0), not q(0).
d(1) :- c(1), not p(1), not q(1).
d(2) :- c(2), not p(2), not q(2).
d(3) :- c(3), not p(3), not q(3).
d(4) :- c(4), not p(4), not q(4).
d(0) :- q(0), not p(0), not c(0).
d(1) :- q(1), not p(1), not c(1).
d(2) :- q(2), not p(2), not c(2).
d(3) :- q(3), not p(3), not c(3).
d(4) :- q(4), not p(4), not c(4).
d(0) :- p(0), c(0), q(0).
d(1) :- p(1), c(1), q(1).
d(2) :- p(2), c(2), q(2).
d(3) :- p(3), c(3), q(3).
d(4) :- p(4), c(4), q(4).
u(5) :- d(4).
u(3) :- d(2).
u(1) :- d(0).
u(2) :- d(1), u(1).
u(4) :- d(3), u(3).
u(5) :- u(4), not d(4).
u(3) :- u(2), not d(2).
u(1) :- u(0), not d(0).
q(1) :- p(0), c(0).
q(2) :- p(1), c(1).
q(3) :- p(2), c(2).
q(4) :- p(3), c(3).
q(5) :- p(4), c(4).
q(1) :- p(0), q(0), not c(0).
q(2) :- p(1), q(1), not c(1).
q(3) :- p(2), q(2), not c(2).
q(4) :- p(3), q(3), not c(3).
q(5) :- p(4), q(4), not c(4).
q(1) :- c(0), q(0), not p(0).
q(2) :- c(1), q(1), not p(1).
q(3) :- c(2), q(2), not p(2).
q(4) :- c(3), q(3), not p(3).
q(5) :- c(4), q(4), not p(4).
compute 1 { not false, not false }.
