s = 4 #int(input("size: "))
field = [["0" for x in range(s)]for x in range(s)]
 
def prf(): #PRint Field
	print("\n")
	for x in field:
		print(" ".join(map(str, x)))
	print("\n")
 
prf()
 
def set(x,y,v): #set value by position
	global field
	field[y][x] = str(v)
 
def get(x,y): #get value by position
	return field[y][x]
 
"""def ask2set(): 
	while True:
		inp = input()
		if inp == "p":
			break
		else:
			inp = list(map(int, inp.split()))
			set(inp[0],inp[1],inp[2])
			print("\n")
			prf()"""
 
def check(x,y):
	alive = []
	dead = []
	for i in [x-1, x, x+1]:
	 	for j in [y+1, y, y-1]:
	 		try:
		 		if int(get(i, j)) and (i,j) != (x,y):
		 			alive.append((i,j))
		 		elif (i,j) != (x,y):
		 			dead.append((i,j))
		 	except:
		 		return "0"
	if not int(get(x, y)) and len(alive) == 3:
	 	return "1"
	elif int(get(x, y)) and len(alive) > 1 and len(alive) < 4:
	 	return "1"
	elif int(get(x, y)) and (len(alive) < 1 or len(alive) > 4):
	 	return "0"
 
def play():
	for x in range(s):
		for y in range(s):
			set(x, y, check(x,y))
	prf()
 
 
set(0, 0, 1)
prf()
 
set(0, 1, 1)
prf()
set(1, 0, 1)
prf()
play()
play()
play()