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)