def chang(ip):
ret = ''
for s in ip:
n = int(s)
if 0 <= n <= 255:
ret = ret + bin(n)[2:].rjust(8,'0')
else:
return False,''
# print(ret)
return True,ret
def check(mask):
head = -1
tail = len(mask)
for i in range(len(mask)):
if mask[i] == '1':
head = i
else:
break
for i in range(len(mask)-1,-1,-1):
if mask[i] == '0':
tail = i
else:
break
return tail - head == 1
# staut,mask = chang(mask)
# print(mask)
# print(check(mask))
while True:
try:
mask = input().split('.')
ip1 = input().split('.')
ip2 = input().split('.')
mask_statu,mask = chang(mask)
ip1_statu,ip1 = chang(ip1)
ip2_statu,ip2 = chang(ip2)
if mask_statu and ip1_statu and ip2_statu and check(mask):
llen = len(mask.replace('0',''))
if ip1[:llen] == ip2[:llen]:
print(0)
else:
print(2)
else:
print(1)
except:
break