t = {} valid = true pos = 16 for i = 1, 16, 1 do n = io.read("*n") if(0 == n) then pos = i elseif(i ~= n) then near = false if(i - 4 == n) then near = true; t[n] = i elseif(i + 4 == n) then near = true; t[n] = i else if(i % 4 ~= 1) then if(i - 1 == n) then near = true; t[n] = i end end if(i % 4 ~= 0) then if(i + 1 == n) then near = true; t[n] = i end end end if(near == false) then valid = false end end end if(valid == false) then io.write("No\n") else len = 0 for k, v in pairs(t) do len = len + 1 end c = 0 while(t[pos] ~= nil) do c = c + 1 pos = t[pos] end if(len == c) then io.write("Yes\n") else io.write("No\n") end end