s1 = input()
s2 = input()
# 创建两个空列表存储可能的时间
list1 = []
list2 = []
# 遍历0 - 60 * 24 分钟
for i in range(0, 60 * 24):
hour = int(i // 60) # 获取小时
minute = int(i % 60) # 获取分钟
# 十位数等于"?",或者与hour(mimute) // 10相等时,遍历值可取
# 十位数等于"?",或者与hour(mimute) % 10相等时,遍历值可取
if s1[0] == "?" or int(s1[0]) == hour // 10:
if s1[1] == "?" or int(s1[1]) == hour % 10:
if s1[3] == "?" or int(s1[3]) == minute // 10:
if s1[4] == "?" or int(s1[4]) == minute % 10:
list1.append(i)
if s2[0] == "?" or int(s2[0]) == hour // 10:
if s2[1] == "?" or int(s2[1]) == hour % 10:
if s2[3] == "?" or int(s2[3]) == minute // 10:
if s2[4] == "?" or int(s2[4]) == minute % 10:
list2.append(i)
# 初始化最大值、最小值
mintime = 60 * 24
maxtime = 0
# 遍历两个列表,取可能的组合,计算最大值、最小值
for i in list1:
for j in list2:
if i < j:
mintime = min(mintime, j-i)
maxtime = max(maxtime, j-i)
print(mintime, maxtime)