Polycarp is going to participate in the contest. It starts at $h_1:m_1$ and ends at $h_2:m_2$. It is guaranteed that the contest lasts an even number of minutes (i.e. $m_1 \% 2 = m_2 \% 2$, where $x \% y$ is $x$ modulo $y$). It is also guaranteed that the entire contest is held during a single day. And finally it is guaranteed that the contest lasts at least two minutes.

Polycarp wants to know the time of the midpoint of the contest. For example, if the contest lasts from $10:00$ to $11:00$ then the answer is $10:30$, if the contest lasts from $11:10$ to $11:12$ then the answer is $11:11$.


-----Input-----

The first line of the input contains two integers $h_1$ and $m_1$ in the format hh:mm.

The second line of the input contains two integers $h_2$ and $m_2$ in the same format (hh:mm).

It is guaranteed that $0 \le h_1, h_2 \le 23$ and $0 \le m_1, m_2 \le 59$.

It is guaranteed that the contest lasts an even number of minutes (i.e. $m_1 \% 2 = m_2 \% 2$, where $x \% y$ is $x$ modulo $y$). It is also guaranteed that the entire contest is held during a single day. And finally it is guaranteed that the contest lasts at least two minutes.


-----Output-----

Print two integers $h_3$ and $m_3$ ($0 \le h_3 \le 23, 0 \le m_3 \le 59$) corresponding to the midpoint of the contest in the format hh:mm. Print each number as exactly two digits (prepend a number with leading zero if needed), separate them with ':'.


-----Examples-----
Input
10:00
11:00

Output
10:30

Input
11:10
11:12

Output
11:11

Input
01:02
03:02

Output
02:02

Source: codeforces | Difficulty: EASY
Tags: Implementation


Solutions:
from datetime import timedelta
a = input()
b = input()
times = [a + ':00', b + ':00']
ans = str(timedelta(minutes=sum(map(lambda f: int(f[0]) * 60 + int(f[1]), map(lambda f: f.split(':'), times))) / len(times)))
if len(ans) % 2 == 1:
	print('0' + ans[:-3])
else:
	print(ans[:-3])


o = input().rstrip().split(':')
p = input().rstrip().split(':')
f = 0
if int(o[0]) > int(p[0]):
	f = f + (13 - int(o[0])) * 60 - int(o[1])
	f = f + (int(p[0]) - 1) * 60 + int(p[1])
else:
	f = abs(f + abs(int(p[0]) - int(o[0])) * 60 + (int(p[1]) - int(o[1])))
g = f // 2
V = g // 60
h = g - V * 60
A = str(int(o[0]) + V)
B = str(int(o[1]) + h)
if int(B) >= 60:
	C = int(B) // 60
	A = str(int(A) + int(B) // 60)
	B = str(int(B) - int(C) * 60)
X = list(A)
Y = list(B)
if len(X) == 1:
	X.insert(0, '0')
if len(Y) == 1:
	Y.insert(0, '0')
C = ''.join(X)
D = ''.join(Y)
print(C, end='')
print(':', end='')
print(D)


import math
t1 = list(map(int, input().split(':')))
t2 = list(map(int, input().split(':')))
hour = (t1[0] + t2[0]) / 2 if t1 <= t2 else (t1[0] + t2[0]) / 2 - 12
minute = 0
if math.floor(hour) != hour:
	minute = 30
	hour = math.trunc(hour)
minute += (t1[1] + t2[1]) / 2
if minute >= 60:
	minute -= 60
	hour = (hour + 1) % 24
hour = str(math.trunc(hour)) if hour >= 10 else '0' + str(math.trunc(hour))
minute = str(math.trunc(minute)) if minute >= 10 else '0' + str(math.trunc(minute))
print(hour + ':' + minute)


t1 = input().strip()
t2 = input().strip()
h1 = int(t1[:2])
m1 = int(t1[3:])
h2 = int(t2[:2])
m2 = int(t2[3:])
t = ((h1 + h2) * 60 + (m1 + m2)) // 2
h = str(t // 60)
m = str(t % 60)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


t1 = input()
h1 = int(t1[0] + t1[1])
m1 = int(t1[3] + t1[4])
t2 = input()
h2 = int(t2[0] + t2[1])
m2 = int(t2[3] + t2[4])
mid = (60 * h2 + m2 - (60 * h1 + m1)) // 2
t = 60 * h1 + m1 + mid
if len(str(t // 60)) == 1:
	print(0, end='')
	print(t // 60, end='')
else:
	print(t // 60, end='')
print(':', end='')
if len(str(t % 60)) == 1:
	print(0, end='')
	print(t % 60)
else:
	print(t % 60)


s1 = input()
s2 = input()
a1 = int(s1[0:2])
b1 = int(s1[3:])
a2 = int(s2[0:2])
b2 = int(s2[3:])
while a1 != a2 or b1 != b2:
	if b1 == 59:
		a1 = a1 + 1
	b1 = (b1 + 1) % 60
	if b2 == 0:
		a2 = a2 - 1
	b2 = (b2 - 1) % 60
if a1 < 10:
	a1 = '0' + str(a1)
if b1 < 10:
	b1 = '0' + str(b1)
print(a1, ':', b1, sep='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
min1 = h1 * 60 + m1
min2 = h2 * 60 + m2
min3 = (min2 + min1) // 2
h3 = min3 // 60
m3 = min3 % 60
if h3 < 10:
	h3 = ''.join(['0', str(h3)])
if m3 < 10:
	m3 = ''.join(['0', str(m3)])
print(str(h3) + ':' + str(m3))


import os
import sys
from io import BytesIO, IOBase
from collections import defaultdict

def main():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	bacha = (h2 * 60 + m2 - (h1 * 60 + m1)) // 2 + (h1 * 60 + m1)
	ansh = str(bacha // 60)
	ansm = str(bacha % 60)
	if len(ansh) < 2:
		ansh = '0' + ansh
	if len(ansm) < 2:
		ansm = '0' + ansm
	print(ansh + ':' + ansm)
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
main()


a = input().split(':')
b = input().split(':')
a1 = 60 * int(a[0]) + int(a[1])
b1 = 60 * int(b[0]) + int(b[1])
c = (a1 + b1) // 2
print(str((c - c % 60) // 60).rjust(2, '0') + ':' + str(c % 60).rjust(2, '0'))


import math
from collections import defaultdict
ml = lambda : map(int, input().split())
ll = lambda : list(map(int, input().split()))
ii = lambda : int(input())
ip = lambda : input()
t = ip()
t2 = ip()
a = int(t[:2])
b = int(t[3:])
ans = 0
f = a
if b > 0:
	a += 1
	ans += 60 - b
c = int(t2[:2])
d = int(t2[3:])
ans += (c - a) * 60
ans += d
ans //= 2
hrs = ans // 60
min = ans % 60
ans_hrs = f + hrs + (b + min) // 60
ans_min = (b + min) % 60
ans_hrs = str(ans_hrs)
ans_min = str(ans_min)
if len(ans_hrs) == 1:
	ans_hrs = '0' + ans_hrs
if len(ans_min) == 1:
	ans_min = '0' + ans_min
print(ans_hrs + ':' + ans_min)


t1 = input()
t2 = input()
h1 = int(t1[0:2])
h2 = int(t2[0:2])
m1 = int(t1[3:5])
m2 = int(t2[3:5])
h = h1 + h2
m = (m1 + m2 + (h1 + h2) % 2 * 60) // 2
h = (h1 + h2) // 2
if m // 60 >= 1:
	m -= 60
	h += 1
if h // 10 < 1:
	print(0, h, sep='', end='')
else:
	print(h, sep='', end='')
print(':', end='', sep='')
if m // 10 < 1:
	print(0, m, sep='', end='')
else:
	print(m, sep='', end='')


(a, b) = [int(s) for s in input().split(':')]
(c, d) = [int(s) for s in input().split(':')]
time = (c * 60 + d - a * 60 - b) // 2
if b + time % 60 >= 60:
	if a + time // 60 + 1 < 10:
		print('0' + str(a + time // 60 + 1), end='')
	else:
		print(a + time // 60 + 1, end='')
	print(':', end='')
	if (b + time % 60) % 60 < 10:
		print('0' + str((b + time % 60) % 60), end='')
	else:
		print((b + time % 60) % 60, end='')
else:
	if a + time // 60 < 10:
		print('0' + str(a + time // 60), end='')
	else:
		print(a + time // 60, end='')
	print(':', end='')
	if b + time % 60 < 10:
		print('0' + str(b + time % 60), end='')
	else:
		print(b + time % 60, end='')


ti = input()
tf = input()
(til, tfl) = ([], [])
for i in ti:
	til.append(i)
for i in tf:
	tfl.append(i)
hri = int(f'{til[0]}{til[1]}')
hrf = int(f'{tfl[0]}{tfl[1]}')
mini = int(f'{til[3]}{til[4]}')
minf = int(f'{tfl[3]}{tfl[4]}')
hrti = hri * 60 + mini
hrtf = hrf * 60 + minf
mt = (hrtf - hrti) // 2
meio = hrti + mt
if meio % 60 >= 10 and meio // 60 >= 10:
	print(f'{meio // 60}:{meio % 60}')
elif meio % 60 >= 10 and meio // 60 < 10:
	print(f'0{meio // 60}:{meio % 60}')
elif meio % 60 < 10 and meio // 60 >= 10:
	print(f'{meio // 60}:0{meio % 60}')
else:
	print(f'0{meio // 60}:0{meio % 60}')


(a1, b1) = map(int, input().split(':'))
(a2, b2) = map(int, input().split(':'))
c = ((a2 - a1) * 60 + (b2 - b1)) // 2
a1 += c // 60
b1 += c % 60
if b1 >= 60:
	b1 -= 60
	a1 += 1
print('{:02d}:{:02d}'.format(a1, b1))


def main():
	s1 = input()
	s2 = input()
	t1 = int(s1[:2]) * 60 + int(s1[-2:])
	t2 = int(s2[:2]) * 60 + int(s2[-2:])
	mid = (t1 + t2) // 2
	h = str(mid // 60)
	if len(h) < 2:
		h = '0' + h
	m = str(mid % 60)
	if len(m) < 2:
		m = '0' + m
	print(h + ':' + m)
main()


import math
start = [int(k) for k in input().split(':')]
end = [int(k) for k in input().split(':')]
midpoint = [0, 0]
b = [0, 0]
b[0] = (end[0] - start[0]) / 2
b[1] = (end[1] - start[1]) / 2
(frac, whole) = math.modf(b[0])
midpoint[0] = start[0] + whole
midpoint[1] = start[1] + b[1] + frac * 60
if midpoint[1] >= 60:
	midpoint[1] -= 60
	midpoint[0] += 1
print(str(int(midpoint[0])).zfill(2) + ':' + str(int(midpoint[1])).zfill(2))


h1 = list(map(str, input().split()))
h2 = list(map(str, input().split()))
m1 = int(h1[0][3:])
h1 = int(h1[0][:2])
m2 = int(h2[0][3:])
h2 = int(h2[0][:2])
x1 = ((h2 - h1) * 60 + (m2 - m1)) // 2
x2 = x1 // 60
x3 = x1 % 60
h1 = h1 + x2
m1 = m1 + x3
if m1 >= 60:
	h1 += 1
	if len(str(m1)) < 3:
		if m1 % 60 == 0:
			m1 = '00'
		elif m1 % 60 < 10:
			m1 = '0' + str(m1 % 60)
		else:
			m1 = str(m1 % 60)
	else:
		m1 = str(m1 % 60)
if len(str(h1)) < 2:
	if len(str(m1)) < 2:
		print('0', h1, ':', '0', m1, sep='')
	else:
		print('0', h1, ':', m1, sep='')
elif len(str(h1)) == 2:
	if len(str(m1)) < 2:
		print(h1, ':', '0', m1, sep='')
	else:
		print(h1, ':', m1, sep='')
else:
	print(h1, ':', m1, sep='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = t1 + (t2 - t1) // 2
hans = str(t // 60)
mans = str(t % 60)
if len(hans) == 1:
	hans = '0' + hans
if len(mans) == 1:
	mans = '0' + mans
print(hans + ':' + mans)


(h1, m1) = [int(p) for p in input().split(':')]
(h2, m2) = [int(p) for p in input().split(':')]
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = (t1 + t2) // 2
h = t // 60
m = t % 60
if m < 10:
	if h < 10:
		print('0' + str(h) + ':' + '0' + str(m))
	else:
		print(str(h) + ':' + '0' + str(m))
elif h < 10:
	print('0' + str(h) + ':' + str(m))
else:
	print(str(h) + ':' + str(m))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
time = ((h2 - h1) * 60 + (m2 - m1)) / 2
h = int(time // 60)
m = int(time - h * 60)
h3 = h1 + h
m3 = m1 + m
if m3 >= 60:
	m3 -= 60
	h3 += 1
print(('0' if h3 < 10 else '') + str(int(h3)) + ':' + ('0' if m3 < 10 else '') + str(int(m3)))


def getAns(start_time, end_time):
	start_hour = int(start_time[0])
	start_minutes = int(start_time[1])
	end_hour = int(end_time[0])
	end_minutes = int(end_time[1])
	ans = 60 * (start_hour + end_hour) + start_minutes + end_minutes
	ans /= 2
	ans = int(ans)
	ans_hour = ans // 60
	ans_minutes = ans % 60
	return str(ans_hour).zfill(2) + ':' + str(ans_minutes).zfill(2)
start_time = input().split(':')
end_time = input().split(':')
print(getAns(start_time, end_time))


(h1, m1) = tuple(map(int, input().split(':')))
(h2, m2) = tuple(map(int, input().split(':')))
sered = (h2 * 60 + m2 - (h1 * 60 + m1)) // 2 + (h1 * 60 + m1)
h = str(sered // 60)
m = str(sered % 60)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(h, m, sep=':')


s1 = str(input())
s2 = str(input())
h1 = int(s1[:2])
h2 = int(s2[:2])
hmid = (h1 + h2) // 2
m1 = int(s1[3:])
m2 = int(s2[3:])
mmid = (m1 + m2) // 2
mmid += 30 * ((h1 + h2) % 2)
if mmid >= 60:
	hmid += 1
	mmid = mmid % 60
hmid = str(hmid)
mmid = str(mmid)
if len(hmid) == 1:
	hmid = '0' + hmid
if len(mmid) == 1:
	mmid = '0' + mmid
print(hmid + ':' + mmid)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
resm = (m1 + m2) // 2 + (h1 + h2) % 2 * 30
resh = (h1 + h2) // 2 + resm // 60
resm = resm % 60
if resh < 10:
	resh = '0' + str(resh)
if resm < 10:
	resm = '0' + str(resm)
print(resh, resm, sep=':')


import sys
s1 = input()
s2 = input()
h1 = int(s1[:2])
m1 = int(s1[3:])
h2 = int(s2[:2])
m2 = int(s2[3:])
if h1 == h2:
	ans = (m1 + m2) // 2
	ans = str(ans)
	h1 = str(h1)
	if len(ans) != 2:
		ans = '0' + ans
	if len(h1) != 2:
		h1 = '0' + h1
	print('%s:%s' % (h1, ans))
else:
	ans2 = m1 + m2
	if ans2 >= 60:
		z = ans2 - 60
		z = z // 2
		ans1 = h1 + h2 + 1
		if ans1 % 2 == 0:
			ans1 = ans1 // 2
			ans1 = str(ans1)
			z = str(z)
			if len(ans1) != 2:
				ans1 = '0' + ans1
			if len(z) != 2:
				z = '0' + z
			print('%s:%s' % (ans1, z))
		else:
			ans1 = ans1 // 2
			ans1 = str(ans1)
			z = str(z + 30)
			if len(ans1) != 2:
				ans1 = '0' + ans1
			if len(z) != 2:
				z = '0' + z
			print('%s:%s' % (ans1, z))
	else:
		z = ans2 // 2
		ans1 = h1 + h2
		if ans1 % 2 == 0:
			ans1 = ans1 // 2
			ans1 = str(ans1)
			z = str(z)
			if len(ans1) != 2:
				ans1 = '0' + ans1
			if len(z) != 2:
				z = '0' + z
			print('%s:%s' % (ans1, z))
		else:
			ans1 = ans1 // 2
			ans1 = str(ans1)
			z = str(z + 30)
			if len(ans1) != 2:
				ans1 = '0' + ans1
			if len(z) != 2:
				z = '0' + z
			print('%s:%s' % (ans1, z))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
start = h1 * 60 + m1
end = h2 * 60 + m2
mid = (end - start) // 2
(h3, m3) = (h1 + mid // 60, m1 + mid % 60)
if m3 >= 60:
	m3 -= 60
	h3 += 1
print(f'{h3:02}', f'{m3:02}', sep=':')


def main():
	(h1, m1) = list(map(int, input().split(':')))
	(h2, m2) = list(map(int, input().split(':')))
	t1 = m1 + h1 * 60
	t2 = m2 + h2 * 60
	d_t = t2 - t1
	d_t = t1 + d_t // 2
	(d_h, d_m) = (d_t // 60, d_t % 60)
	print('{:02d}:{:02d}'.format(d_h, d_m))
main()


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
m3 = h1 * 60 + h2 * 60 + m1 + m2
m3 = m3 // 2
h = m3 // 60
m = m3 % 60
print(h // 10, h % 10, ':', m // 10, m % 10, sep='')


(a, b) = map(int, input().split(':'))
(x, y) = map(int, input().split(':'))
c = ((x - a) * 60 + (y - b)) // 2
a += c // 60
b += c % 60
if b >= 60:
	b -= 60
	a += 1
print('{:02d}:{:02d}'.format(a, b))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
diff = ((c - a) * 60 + (d - b)) // 2
hour = diff // 60
minute = diff % 60
x = a + hour
y = b + minute
if y >= 60:
	x += 1
	y -= 60
print('%02d' % x, ':', '%02d' % y, sep='')


start = input()
end = input()
h1 = start[0] + start[1]
m1 = start[3] + start[4]
h2 = end[0] + end[1]
m2 = end[3] + end[4]
h1 = int(h1)
m1 = int(m1)
h2 = int(h2)
m2 = int(m2)
m_h1 = 60 * h1
h2 = 60 * h2
start_min = m_h1 + m1
end_min = h2 + m2
total_min = end_min - start_min
midpoint = total_min / 2
if midpoint >= 60:
	hour = midpoint / 60
	minutes = midpoint % 60
else:
	hour = 0
	minutes = midpoint % 60
mid_hour = int(h1 + hour)
mid_min = int(minutes + m1)
if mid_min >= 60:
	mid_hour += int(mid_min / 60)
	mid_min = int(mid_min % 60)
if mid_hour < 10:
	mid_hour = '0' + str(mid_hour)
else:
	mid_hour = str(mid_hour)
if mid_min < 10:
	mid_min = '0' + str(mid_min)
else:
	mid_min = str(mid_min)
result = mid_hour + ':' + mid_min
print(result)


def calc(s, d):
	h1 = int(s[:2])
	h2 = int(d[:2])
	m1 = int(s[3:])
	m2 = int(d[3:])
	val = ((h1 + h2) * 60 + m1 + m2) // 2
	hr = str(val // 60).zfill(2)
	min = str(val % 60).zfill(2)
	print(hr + ':' + min)
s = input()
d = input()
calc(s, d)


import math
(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
a = h1 * 60 + m1
b = h2 * 60 + m2
diff = (a + b) // 2
print(str(diff // 60).zfill(2) + ':' + str(diff % 60).zfill(2))


a = input()
b = input()
(ha, ma) = (int(a[0:2]), int(a[3:]))
(hb, mb) = (int(b[0:2]), int(b[3:]))
rh = int((ha * 60 + hb * 60 + ma + mb) / 2 // 60)
rm = int((ha * 60 + hb * 60 + ma + mb) / 2 % 60)
if rh // 10 == 0:
	rh = '0' + str(rh)
if rm // 10 == 0:
	rm = '0' + str(rm)
print(f'{rh}:{rm}')


def main():

	def get_mins(at):
		split = at.split(':')
		return int(split[0]) * 60 + int(split[1])

	def to_string(min):
		hour_str = str(min // 60)
		if len(hour_str) == 1:
			hour_str = '0' + hour_str
		min_str = str(min % 60)
		if len(min_str) == 1:
			min_str = '0' + min_str
		return hour_str + ':' + min_str
	starts_at = input().strip()
	ends_at = input().strip()
	starts_at_min = get_mins(starts_at)
	ends_at_min = get_mins(ends_at)
	midpoint_min = (starts_at_min + ends_at_min) // 2
	print(to_string(midpoint_min))
main()


(s, t) = list(map(int, input().split(':')))
(s2, t2) = list(map(int, input().split(':')))
hd = s2 - s
mins = hd * 60
mins += t2 - t
mins = mins // 2
ans = s + mins // 60
mins %= 60
mins = t + mins
ans += mins // 60
mins %= 60
if ans < 10:
	ans = '0' + str(ans)
if mins < 10:
	mins = '0' + str(mins)
mins = str(mins)
ans = str(ans)
print(ans + ':' + mins)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
mid = (h1 * 60 + m1 + (h2 * 60 + m2)) // 2
print('{:02d}:{:02d}'.format(mid // 60, mid % 60))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
tf = t1 + t2
tf //= 2
if tf // 60 < 10:
	print('0' + str(tf // 60), end=':')
else:
	print(str(tf // 60), end=':')
if tf % 60 < 10:
	print('0' + str(tf % 60))
else:
	print(str(tf % 60))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
diff = t2 - t1
t = t1 + diff // 2
h3 = t // 60
m3 = t % 60
print('{:02}:{:02}'.format(h3, m3))


def f(n):
	if n < 10:
		return '0' + str(n)
	return str(n)
(sth, stm) = map(int, input().split(':'))
(eth, etm) = map(int, input().split(':'))
(ht, mt) = (eth - sth, etm - stm)
s1 = ht * 60 + mt
s1 //= 2
ansh = sth + s1 // 60
ansm = stm + s1 % 60
if ansm >= 60:
	ansm = ansm % 60
	ansh += 1
print(f'{f(ansh)}:{f(ansm)}')


start = list(map(int, input().split(':')))
end = list(map(int, input().split(':')))
diff1 = (end[0] - start[0]) * 60
diff1 += end[1] - start[1]
diff1 = diff1 // 2
diff1 += start[1]
resh = start[0] + diff1 // 60
resm = diff1 % 60
if resm >= 60:
	resm %= 60
	resh += resm // 60
if resh < 10:
	print('0{0}:'.format(resh), end='')
else:
	print('{0}:'.format(resh), end='')
if resm < 10:
	print('0{0}'.format(resm))
else:
	print(resm)


inp = input()
h1 = int(inp[0] + inp[1])
m1 = int(inp[3] + inp[4])
inp = input()
h2 = int(inp[0] + inp[1])
m2 = int(inp[3] + inp[4])
m3 = (m1 + (m2 - m1 + 60 * (h2 - h1)) // 2) % 60
h3 = h1 + (m1 + (m2 - m1 + 60 * (h2 - h1)) // 2) // 60
if h3 // 10 == 0:
	h3 = '0' + str(h3)
if m3 // 10 == 0:
	m3 = '0' + str(m3)
print(h3, ':', m3, sep='')


import re, math, decimal, bisect

def read():
	return input().strip()

def iread():
	return int(input().strip())

def viread():
	return [int(_) for _ in input().strip().split()]
import datetime
start = datetime.datetime.strptime(read(), '%H:%M')
end = datetime.datetime.strptime(read(), '%H:%M')
delta = end - start
print(datetime.datetime.strftime(start + delta / 2, '%H:%M'))


def addTime(h, m, minutes):
	newMin = m + minutes
	h += newMin // 60
	newMin = newMin % 60
	return (h, newMin)
t1 = input().split(':')
t2 = input().split(':')
h1 = t1[0]
m1 = t1[1]
h2 = t2[0]
m2 = t2[1]
diff_h = int(h2) - int(h1)
diff_m = int(m2) - int(m1)
total_min_diff = diff_h * 60 + diff_m
(mid_time_h, mid_time_m) = addTime(int(h1), int(m1), total_min_diff // 2)
if mid_time_h < 10:
	print('0', mid_time_h, sep='', end='')
else:
	print(mid_time_h, end='')
if mid_time_m < 10:
	print(':0', mid_time_m, sep='')
else:
	print(':', mid_time_m, sep='')


s1 = list(map(int, input().split(':')))
s2 = list(map(int, input().split(':')))
heureMid = s1[0] * 60 + s1[1] + s2[0] * 60 + s2[1]
heureMid = heureMid // 2
h = str(heureMid // 60)
if len(h) == 1:
	h = '0' + h
m = str(heureMid % 60)
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


time1 = input().split(':')
time2 = input().split(':')
mid = ''
errorm = 0
errorh = 0
if (int(time1[0]) + int(time2[0])) % 2 != 0:
	errorm = 30
min = (int(time1[1]) + int(time2[1])) / 2 + errorm
if min >= 60:
	min -= 60
	errorh = 1
hr = str((int(time1[0]) + int(time2[0])) // 2 + errorh) + ':'
if len(hr) == 2:
	hr = '0' + hr
if len(str(int(min))) == 1:
	min = '0' + str(int(min))
else:
	min = str(int(min))
mid += hr + min
print(mid)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
m = m2 - m1
m += (h2 - h1) * 60
m //= 2
m = m + m1
h = h1
while m >= 60:
	m -= 60
	h += 1
if h < 10:
	h = '0' + str(h)
if m < 10:
	m = '0' + str(m)
print(h, m, sep=':')


import math
import datetime
inp = input()
h1 = int(inp[0:2])
m1 = int(inp[3:])
inp = input()
h2 = int(inp[0:2])
m2 = int(inp[3:])
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = (t2 - t1) / 2
result = t1 + t
h = int(result / 60)
m = int(result % 60)
t = datetime.time(h, m)
t = t.strftime('%H:%M')
print(t)


t1 = [int(i) for i in input().split(':')]
t2 = [int(i) for i in input().split(':')]
if t2[0] < t1[0]:
	t2[0] += 24
mid = (t2[0] - t1[0]) * 60 + t2[1] - t1[1]
mid = int(mid / 2)
h = t1[0] + int(mid / 60)
m = t1[1] + int(mid % 60)
if m >= 60:
	m -= 60
	h += 1
if h >= 24:
	h -= 24
if h < 10:
	print('0', end='')
print(h, end='')
print(':', end='')
if m < 10:
	print('0', end='')
print(m, end='')


a = [int(i) for i in input().split(':')]
b = [int(i) for i in input().split(':')]
ta = 60 * a[0] + a[1]
tb = 60 * b[0] + b[1]
ans = (ta + tb) // 2
p = ans // 60
q = ans % 60
if p < 10:
	print('0' + str(p) + ':', end='')
else:
	print(str(p) + ':', end='')
if q < 10:
	print('0' + str(q))
else:
	print(q)


a = input()
a = a.split(':')
b = input()
b = b.split(':')
for i in range(2):
	a[i] = int(a[i])
for i in range(2):
	b[i] = int(b[i])
minute = (b[0] - a[0]) * 60 + (b[1] - a[1])
middle = int(minute / 2)
hour = 0
minplus = 0
if middle >= 60:
	hour = int(middle / 60)
	minplus = middle - 60 * hour
else:
	hour = 0
	minplus = middle
if a[1] + minplus >= 60:
	hour += 1
	minplus = a[1] + minplus - 60
	a[1] = 0
ansh = str(a[0] + hour)
ansm = str(a[1] + minplus)
if a[0] + hour >= 10:
	ansh = str(a[0] + hour)
else:
	ansh = '0' + str(a[0] + hour)
if a[1] + minplus >= 10:
	ansm = str(a[1] + minplus)
else:
	ansm = '0' + str(a[1] + minplus)
print(ansh + ':' + ansm)


(hh1, mm1) = map(int, input().split(':'))
(hh2, mm2) = map(int, input().split(':'))
mm = (60 * hh1 + mm1 + 60 * hh2 + mm2) // 2
print(f'{mm // 60:02}:{mm % 60:02}')


a = input()
b = input()
m = int(a[:2])
n = int(b[:2])
o = int(a[3:])
p = int(b[3:])
y = m * 60 + o
z = n * 60 + p
k = (z - y) // 2
o += k
m += o // 60
o = o % 60
if m // 10 == 0 and o < 10:
	print('0' + str(m) + ':' + '0' + str(o))
elif m // 10 == 0 and o >= 10:
	print('0' + str(m) + ':' + str(o))
elif m // 10 != 0 and o < 10:
	print(str(m) + ':' + '0' + str(o))
else:
	print(str(m) + ':' + str(o))


s = input().split(':')
(h1, m1) = (int(s[0]), int(s[1]))
s = input().split(':')
(h2, m2) = (int(s[0]), int(s[1]))
x = h1 * 60 + m1
y = h2 * 60 + m2
h3 = x + (y - x) // 2
m3 = x + (y - x) // 2
h3 = h3 // 60
m3 = m3 % 60
if h3 < 10:
	h3 = '0' + str(h3) + ':'
else:
	h3 = str(h3) + ':'
if m3 < 10:
	m3 = '0' + str(m3)
else:
	m3 = str(m3)
print(h3 + m3)


a = [int(i) for i in input().strip().split(':')]
b = [int(i) for i in input().strip().split(':')]
a_min = a[0] * 60 + a[1]
b_min = b[0] * 60 + b[1]
minutes = b_min - a_min
minutes /= 2
hrs = minutes // 60
mins = minutes % 60
if a[1] + mins >= 60:
	a[0] += 1
hrss = '0' + str(int(a[0] + hrs)) if a[0] + hrs < 10 else str(int(a[0] + hrs))
minss = '0' + str(int((a[1] + mins) % 60)) if (a[1] + mins) % 60 < 10 else str(int((a[1] + mins) % 60))
print(hrss + ':' + minss)


(x1, x2) = map(int, input().split(':'))
(y1, y2) = map(int, input().split(':'))
if (x1 - y1) % 2 == 1:
	if x2 + y2 >= 60:
		x2 -= 60
		x1 += 1
	else:
		y2 += 60
		y1 -= 1
	print(str((x1 + y1) // 2).zfill(2), ':', str((x2 + y2) // 2).zfill(2), sep='')
else:
	print(str((x1 + y1) // 2).zfill(2), ':', str((x2 + y2) // 2).zfill(2), sep='')


s = input()
l = s.split(':')
l[0] = int(l[0])
l[1] = int(l[1])
t1 = l[0] * 60 + l[1]
s = input()
l = s.split(':')
l[0] = int(l[0])
l[1] = int(l[1])
t2 = l[0] * 60 + l[1]
t3 = (t1 + t2) // 2
h3 = t3 // 60
m3 = t3 % 60
if h3 < 10:
	h3 = '0' + str(h3)
if m3 < 10:
	m3 = '0' + str(m3)
print(str(h3) + ':' + str(m3))


def middle_of_the_contest(times):
	a = []
	for i in range(0, 2):
		(h, m) = map(int, times[i].split(':'))
		a.append([h, m, h * 60 + m])
	b = a[0][2] + (a[1][2] - a[0][2]) // 2
	return f'{b // 60:0>2}:{b % 60:0>2}'
t = input()
s = input()
print(middle_of_the_contest([t, s]))


t1 = input()
t2 = input()
h1 = int(t1[0:2])
m1 = int(t1[3:5])
h2 = int(t2[0:2])
m2 = int(t2[3:5])
md = m2 - m1
hd = h2 - h1
md += hd * 60
md = md // 2
ha = md // 60
ma = md % 60
m3 = m1 + ma
ha += m3 // 60
m3 = m3 % 60
h3 = h1 + ha
if h3 // 10 != 0 and m3 // 10 != 0:
	print(str(h3) + ':' + str(m3))
elif h3 // 10 == 0 and m3 // 10 != 0:
	print('0' + str(h3) + ':' + str(m3))
elif h3 // 10 != 0 and m3 // 10 == 0:
	print(str(h3) + ':' + '0' + str(m3))
else:
	print('0' + str(h3) + ':' + '0' + str(m3))


m = list(map(int, input().split(':')))
v = list(map(int, input().split(':')))
p = v[0] * 60 + v[1] - m[0] * 60 - m[1]
r1 = str(int(m[0] + p / 2 // 60))
r2 = str(int(m[1] + p / 2 % 60))
if int(r2) >= 60:
	r2 = str(int(r2) - 60)
	r1 = str(int(r1) + 1)
if len(r1) == 1:
	r1 = '0' + r1
if len(r2) == 1:
	r2 = '0' + r2
print(r1 + ':' + r2)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = t1 + (t2 - t1) // 2
h3 = t // 60
m3 = t % 60
print(f'{h3:02d}:{m3:02d}')


kk = lambda : map(int, input().split(':'))
(h1, m1) = kk()
(h2, m2) = kk()
v = (60 * (h1 + h2) + m1 + m2) // 2
print('{0:02}:{1:02}'.format(v // 60, v % 60))


(h1, m1) = tuple(map(int, input().split(':')))
(h2, m2) = tuple(map(int, input().split(':')))
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
t3 = (t1 + t2) // 2
h3 = t3 // 60
m3 = t3 % 60
h3s = str(h3)
m3s = str(m3)
while len(h3s) < 2:
	h3s = '0' + h3s
while len(m3s) < 2:
	m3s = '0' + m3s
print(h3s + ':' + m3s)


from datetime import datetime
a = str(input())
b = str(input())
FMT = '%H:%M'
delta = datetime.strptime(b, FMT) - datetime.strptime(a, FMT)
half = datetime.strptime(a, FMT) + delta / 2
x = str(datetime.time(half))
x = x[0:5]
print(x)


def fastio():
	import sys
	from io import StringIO
	from atexit import register
	global input
	sys.stdin = StringIO(sys.stdin.read())
	input = lambda : sys.stdin.readline().rstrip('\r\n')
	sys.stdout = StringIO()
	register(lambda : sys.__stdout__.write(sys.stdout.getvalue()))
fastio()
MOD = 10 ** 9 + 7
I = lambda : list(map(int, input().split(':')))
(a, b) = I()
(c, d) = I()
x = a * 60 + b
y = c * 60 + d
if y < x:
	y += 24 * 60
s = (y - x) // 2
a = (a + s // 60) % 24
if b + s % 60 >= 60:
	a = (a + 1) % 24
b = (b + s % 60) % 60
a = str(a)
b = str(b)
if len(a) == 1:
	print('0' + a, end=':')
else:
	print(a, end=':')
if len(b) == 1:
	print('0', end='')
print(b)


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))

def solve(h1, h2, m1, m2):
	m_sum = (h1 + h2) * 60 + m1 + m2
	rh = m_sum // (2 * 60)
	rm = m_sum // 2 % 60
	print('%02d:%02d' % (rh, rm))
solve(h1, h2, m1, m2)


s1 = input()
s2 = input()
(h1, m1) = s1.split(':')
(h2, m2) = s2.split(':')
h1 = int(h1)
h2 = int(h2)
m1 = int(m1)
m2 = int(m2)
m1_mid = 0
h1_mid = 0
if (h1 + h2) % 2 == 0:
	h1_mid = (h1 + h2) // 2
else:
	h1_mid = (h1 + h2) // 2
	m1_mid = 30
m1_mid += (m1 + m2) // 2
h1_mid += m1_mid // 60
m1_mid = m1_mid % 60
if h1_mid <= 9:
	h1_mid = '0' + str(h1_mid)
if m1_mid <= 9:
	m1_mid = '0' + str(m1_mid)
print('{}:{}'.format(h1_mid, m1_mid))


(h1, m1) = list(map(int, input().strip().split(':')))
(h2, m2) = list(map(int, input().strip().split(':')))
time_in_mins1 = h1 * 60 + m1
time_in_mins2 = h2 * 60 + m2
mid_time_in_mins = int((time_in_mins1 + time_in_mins2) / 2)
h_mid = int(mid_time_in_mins / 60)
m_mid = mid_time_in_mins % 60
print('{:02d}:{:02d}'.format(h_mid, m_mid))


def minutos_para_horas(duracao_minutos):
	horas = duracao_minutos // 60
	minutos = duracao_minutos % 60
	return (horas, minutos)
input1 = input().split(':')
(h1, m1) = (int(input1[0]), int(input1[1]))
input2 = input().split(':')
(h2, m2) = (int(input2[0]), int(input2[1]))
if m2 >= m1:
	dh = h2 - h1
	dm = m2 - m1
else:
	dh = h2 - h1 - 1
	dm = 60 - (m1 - m2)
tempo_total = 60 * dh + dm
meio_tempo = tempo_total // 2
if dh % 2 != 0:
	h3 = h1 + dh // 2
	m3 = m1 + dm // 2 + 30
else:
	h3 = h1 + dh // 2
	m3 = m1 + dm // 2
if m3 >= 60:
	m3 %= 60
	h3 += 1
str_h3 = str(h3)
if h3 < 10:
	str_h3 = '0' + str_h3
str_m3 = str(m3)
if m3 < 10:
	str_m3 = '0' + str_m3
print(str_h3 + ':' + str_m3)


(time1, time2) = (input().split(':'), input().split(':'))
hours = ((int(time1[0]) + int(time2[0])) * 60 + int(time1[1]) + int(time2[1])) // 2 // 60
minets = ((int(time1[0]) + int(time2[0])) * 60 + int(time1[1]) + int(time2[1])) // 2 % 60
if hours < 10:
	hours = '0' + str(hours)
if minets < 10:
	minets = '0' + str(minets)
print(str(hours) + ':' + str(minets))


(h1, m1, h2, m2) = (0, 0, 0, 0)
(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
a = 60 * int(h1) + int(m1)
b = 60 * int(h2) + int(m2)
c = int((a + b) / 2)
h3 = int(c / 60)
m3 = c % 60
if h3 < 10 and m3 >= 10:
	print('0' + str(h3) + ':' + str(m3))
elif m3 < 10 and h3 >= 10:
	print(str(h3) + ':' + '0' + str(m3))
elif m3 < 10 and h3 < 10:
	print('0' + str(h3) + ':0' + str(m3))
else:
	print(str(h3) + ':' + str(m3))


def to_time(t):
	h = t // 60
	m = t % 60
	if h < 10:
		h = '0' + str(h)
	else:
		h = str(h)
	if m < 10:
		m = '0' + str(m)
	else:
		m = str(m)
	return h + ':' + m
a = input()
b = input()
t1 = int(a[0:2]) * 60 + int(a[3:5])
t2 = int(b[0:2]) * 60 + int(b[3:5])
t3 = (t1 + t2) // 2
print(to_time(t3))


a = input()
b = input()
a1 = a.split(':')
b1 = b.split(':')
a2 = int(a1[0]) * 60 + int(a1[1])
b2 = int(b1[0]) * 60 + int(b1[1])
k3 = b2 - a2
k1 = a2 + k3 // 2
a1 = k1 // 60
a2 = k1 % 60
k = ''
if len(str(a1)) == 2:
	k += str(a1) + ':'
else:
	k += '0' + str(a1) + ':'
if len(str(a2)) == 2:
	k += str(a2)
else:
	k += '0' + str(a2)
print(k)


n = list(map(int, input().split(':')))
m = list(map(int, input().split(':')))
total = (m[0] - n[0]) * 60 - n[1] + m[1]
total = total // 2
new_min = (n[1] + total) % 60
new_hour = n[0] + (n[1] + total) // 60
if new_hour < 10:
	new_hour = str(0) + str(new_hour)
if new_min < 10:
	new_min = str(0) + str(new_min)
print(str(new_hour) + ':' + str(new_min))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
m = 0
(x, y) = (a, b)
while not (x == c and y == d):
	y += 1
	if y == 60:
		y = 0
		x += 1
	x %= 24
	m += 1
r = 0
while r < m // 2:
	b += 1
	if b == 60:
		b = 0
		a += 1
	a %= 24
	r += 1
if len(str(a)) == 1:
	a = '0' + str(a)
else:
	a = str(a)
if len(str(b)) == 1:
	b = '0' + str(b)
else:
	b = str(b)
print(a + ':' + b)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t = (h1 * 60 + m1 + h2 * 60 + m2) // 2
(h, m) = (t // 60, t % 60)
print(str(h).zfill(2) + ':' + str(m).zfill(2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
mid = (t1 + t2) // 2
h = mid // 60
m = mid % 60
print('%02d:%02d' % (h, m))


s = input()
t = input()
n = int(s[:2])
m = int(t[:2])
s1 = 60 * int(n) + int(s[3:])
s2 = 60 * int(m) + int(t[3:])
p = int((s1 + s2) / 2)
if p >= 60:
	r = str(p % 60)
	d = str(int(p / 60))
	if len(d) == 1:
		d = '0' + d
		if len(r) == 1:
			r = '0' + r
	elif len(r) == 1:
		r = '0' + r
	print(d + ':' + r)
else:
	p = str(p)
	if len(p) == 1:
		p = '0' + p
		print('00:' + p)
	else:
		print('00:' + p)


p = input()
q = input()
(h1, m1) = map(int, p.split(':'))
(h2, m2) = map(int, q.split(':'))
m1 += h1 * 60
m2 += h2 * 60
m = (m1 + m2) // 2
h = str(m // 60)
if len(h) == 1:
	h = '0' + h
m = str(m % 60)
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
avgm = ((h1 + h2) * 60 + m1 + m2) / 2
h3 = int(avgm // 60)
m3 = int(avgm % 60)
if h3 < 10:
	h3 = '0' + str(h3)
else:
	h3 = str(h3)
if m3 < 10:
	m3 = '0' + str(m3)
else:
	m3 = str(m3)
print(h3 + ':' + m3)


def main():

	def minute(a, b):
		ans = a * 60 + b
		return ans

	def hours(a):
		h = a // 60
		m = a - h * 60
		return (h, m)
	s = input()
	s = s.split(':')
	h1 = int(s[0])
	m1 = int(s[1])
	t = input()
	t = t.split(':')
	h2 = int(t[0])
	m2 = int(t[1])
	long = minute(h2, m2) - minute(h1, m1)
	long = long // 2
	ans = minute(h1, m1) + long
	ans = hours(ans)
	l = ''
	if ans[0] < 10:
		l += '0'
	l += str(ans[0])
	l += ':'
	if ans[1] < 10:
		l += '0'
	l += str(ans[1])
	print(l)
main()


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
st = h1 * 60 + m1
end = h2 * 60 + m2
mid = (st + end) // 2
hr = mid // 60
mi = mid % 60
if hr // 10 == 0:
	hr = '0' + str(hr)
if mi // 10 == 0:
	mi = '0' + str(mi)
print('{}:{}'.format(hr, mi))


(n, m) = list(map(int, input().split(':')))
(n1, m1) = list(map(int, input().split(':')))
cnt = n * 60 + m
cnt2 = n1 * 60 + m1
mid = (cnt + cnt2) // 2
hrs = mid // 60
mins = mid % 60
if hrs < 10:
	if mins < 10:
		print('0' + str(hrs) + ':' + '0' + str(mins))
	else:
		print('0' + str(hrs) + ':' + str(mins))
elif mins < 10:
	print(str(hrs) + ':' + '0' + str(mins))
else:
	print(str(hrs) + ':' + str(mins))


(h1, m1) = [int(_) for _ in input().split(':')]
(h2, m2) = [int(_) for _ in input().split(':')]
temp1 = h1 * 60 + m1
temp2 = h2 * 60 + m2
ans = temp2 - temp1
ans = ans // 2
ans = ans + temp1
h3 = ans // 60
m3 = ans % 60
if len(str(h3)) < 2:
	ansh = '0' + str(h3)
else:
	ansh = str(h3)
if len(str(m3)) < 2:
	ansh += ':0' + str(m3)
else:
	ansh += ':' + str(m3)
print(ansh)


candy1 = input()
candy2 = input()
one = []
two = []
for i in candy1:
	one.append(i)
for j in candy2:
	two.append(j)
big1 = int(one[0]) * 10 + int(one[1])
big2 = int(two[0]) * 10 + int(two[1])
small1 = int(one[3]) * 10 + int(one[4])
small2 = int(two[3]) * 10 + int(two[4])
first = big1 * 60 + small1
second = big2 * 60 + small2
half = (first + second) / 2
minss = int(half / 60)
senss = int(half - minss * 60)
if minss - 10 < 0:
	print('0', end='')
	print(minss, end='')
else:
	print(minss, end='')
print(':', end='')
if senss - 10 < 0:
	print('0', end='')
	print(senss, end='')
else:
	print(senss, end='')


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
z = h1 * 60 + m1 + h2 * 60 + m2
z //= 2
print(str(z // 60 // 10) + str(z // 60 % 10) + ':' + str(z % 60 // 10) + str(z % 60 % 10))


(a, b) = ([*map(int, input().split(':'))], [*map(int, input().split(':'))])
t = (a[0] + b[0]) / 2
tt = (a[1] + b[1]) / 2 + (t - int(t)) * 60
if tt > 59:
	t += tt / 60
	tt %= 60
t = int(t)
tt = int(tt)
print(t if t >= 10 else str('0' + str(t)), end=':')
print(tt if tt >= 10 else str('0' + str(tt)))


x = input()
(a1, b1) = (int(x.split(':')[0]), int(x.split(':')[1]))
x = input()
(a2, b2) = (int(x.split(':')[0]), int(x.split(':')[1]))
dif = (60 * (a2 - a1) + (b2 - b1)) / 2
time = 60 * a1 + b1 + dif
hour = str(int(time / 60))
if len(hour) == 1:
	hour = '0' + hour
min = str(int(time % 60))
if len(min) == 1:
	min = '0' + min
time_str = hour + ':' + min
print(time_str)


s1 = input()
s2 = input()
t1 = s1.split(':')
t2 = s2.split(':')
for i in range(len(t1)):
	t1[i] = int(t1[i])
	t2[i] = int(t2[i])
time1 = t1[0] * 60 + t1[1]
time2 = t2[0] * 60 + t2[1]
dif = time2 - time1
(hr, mn) = (0, 0)
if dif < 120:
	hr = t1[0]
	mn = t1[1] + dif // 2
	if mn >= 60:
		hr = hr + mn // 60
		mn = mn - 60 * (mn // 60)
else:
	dif = dif // 2
	newh = dif // 60
	newmin = dif - newh * 60
	hr = t1[0] + newh
	mn = t1[1] + newmin
	if mn >= 60:
		hr = hr + mn // 60
		mn = mn - 60 * (mn // 60)
if hr < 10:
	ans = '0' + str(hr) + ':'
	if mn < 10:
		ans = ans + '0' + str(mn)
	else:
		ans = ans + str(mn)
else:
	ans = str(hr) + ':'
	if mn < 10:
		ans = ans + '0' + str(mn)
	else:
		ans = ans + str(mn)
print(ans)


(*a,) = map(int, input().split(':'))
(*b,) = map(int, input().split(':'))
m = (a[0] + b[0]) % 2 * 30 % 60 + (a[1] + b[1]) // 2
h = (a[0] + b[0]) // 2 + m // 60
print('{:02}:{:02}'.format(h, m % 60))


import sys
from collections import defaultdict as dd
from itertools import permutations as pp
from itertools import combinations as cc
from collections import Counter as ccd
from random import randint as rd
from bisect import bisect_left as bl
import heapq
mod = 10 ** 9 + 7

def ri(flag=0):
	if flag == 0:
		return [int(i) for i in sys.stdin.readline().split()]
	else:
		return int(sys.stdin.readline())
(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
k1 = h1
k2 = m1
c = 0
while h1 != h2 or m1 != m2:
	m1 += 1
	if m1 == 60:
		h1 += 1
		m1 = 0
	c += 1
c = c // 2
while c:
	k2 += 1
	if k2 == 60:
		k1 += 1
		k2 = 0
	c -= 1
print('%02d:%02d' % (k1, k2))


(hh1, mm1) = list(map(int, input().strip().split(':')))
(hh2, mm2) = list(map(int, input().strip().split(':')))
dd = hh2 * 60 + mm2 - (hh1 * 60 + mm1)
dd //= 2
hh = hh1 + dd // 60
if mm1 + dd % 60 >= 60:
	hh += 1
	mm = (mm1 + dd % 60) % 60
else:
	mm = mm1 + dd % 60
hh = str(hh)
mm = str(mm)
if len(hh) < 2:
	hh = '0' + hh
if len(mm) < 2:
	mm = '0' + mm
print(hh + ':' + mm)


st = input().split(':')
end = input().split(':')
duration = 0
ans_hr = 0
ans_mint = 0
if end[0] > st[0]:
	duration = 60 * (int(end[0]) - int(st[0])) + (int(end[1]) - int(st[1]))
elif end[0] == st[0]:
	duration = int(end[1]) - int(st[1])
duration = duration // 2
hr = duration // 60
mint = duration % 60
ans_mint = int(st[1]) + mint
ans_hr += ans_mint // 60
ans_mint = ans_mint % 60
ans_hr += int(st[0]) + hr
if ans_hr < 10:
	ans_hr = '0' + str(ans_hr)
if ans_mint < 10:
	ans_mint = '0' + str(ans_mint)
print(str(ans_hr) + ':' + str(ans_mint))


start = [*map(int, input().split(':'))]
end = [*map(int, input().split(':'))]
delta = (end[0] * 60 + end[1] - (start[0] * 60 + start[1])) // 2
middle = start[0] * 60 + start[1] + delta
h = str(middle // 60) if len(str(middle // 60)) == 2 else '0' + str(middle // 60)
m = str(middle % 60) if len(str(middle % 60)) == 2 else '0' + str(middle % 60)
print(h + ':' + m)


a = input()
b = input()
arr = [0] * 5
brr = [0] * 5
i = -1
for char in a:
	i += 1
	arr[i] = char
i = -1
for char in b:
	i += 1
	brr[i] = char
c = (int(arr[0] + arr[1]) + int(brr[0] + brr[1])) // 2
g = (int(arr[3] + arr[4]) + int(brr[3] + brr[4])) / 2
if (int(arr[0] + arr[1]) + int(brr[0] + brr[1])) % 2 > 0:
	g += 30
if g >= 60:
	c += 1
	g -= 60
g = int(g)
if c < 10:
	c = str(0) + str(c)
if g < 10:
	g = str(0) + str(g)
print(c, ':', g, sep='')


(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
dif = h2 * 60 + m2 - (h1 * 60 + m1)
dif //= 2
hh = dif // 60
mm = dif % 60
h3 = h1 + hh
m3 = m1 + mm
if m3 >= 60:
	m3 = m3 % 60
	h3 += 1
if h3 < 10:
	h3 = '0' + str(h3)
if m3 < 10:
	m3 = '0' + str(m3)
print(h3, ':', m3, sep='')


(hh1, mm1) = map(int, input().split(':'))
(hh2, mm2) = map(int, input().split(':'))
h = ((hh1 + hh2) * 60 + mm1 + mm2) // 2
print('{:02d}:{:02d}'.format(h // 60, h % 60))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))

def of(s):
	return s if len(s) == 2 else '0' + s
m1 = h1 * 60 + m1
m2 = h2 * 60 + m2
sr = (m1 + m2) // 2
print(of(str(sr // 60)) + ':' + of(str(sr % 60)))


a = list(input())
b = list(input())
c1 = a.index(':')
h1 = int(''.join(a[:c1]))
m1 = int(''.join(a[c1 + 1:]))
c2 = a.index(':')
h2 = int(''.join(b[:c2]))
m2 = int(''.join(b[c2 + 1:]))
if (h1 + h2) % 2 == 0:
	if 1:
		ans = str((h1 + h2) // 2) + ':' + str((m1 + m2) // 2)
elif 30 + (m1 + m2) // 2 >= 60:
	ans = str((h1 + h2) // 2 + 1) + ':' + str(30 + (m1 + m2) // 2 - 60)
else:
	ans = str((h1 + h2) // 2) + ':' + str(30 + (m1 + m2) // 2)
col = ans.index(':')
if col == 1 and len(ans) == 4:
	ans = '0' + ans
elif col == 2 and len(ans) == 4:
	ans = ans[:col + 1] + '0' + ans[col + 1:]
elif col == 1 and len(ans) == 3:
	ans = '0' + ans[:col] + ':' + '0' + ans[col + 1:]
print(ans)


def read_input():
	return list(map(int, input().split(':')))
(h1, m1) = read_input()
(h2, m2) = read_input()
t = (h2 + h1) * 60 + (m2 + m1)
t = t // 2
h = t // 60
m = t % 60
print(f'{h:02}:{m:02}')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t3 = int((t2 - t1) / 2)
t = t1 + t3
h = str(int(t / 60))
m = str(t % 60)
if len(h) == 1:
	print('0' + str(h) + ':', end='')
else:
	print(str(h) + ':', end='')
if len(m) == 1:
	print('0' + str(m))
else:
	print(str(m))


z = lambda : map(int, input().split(':'))
(a, b) = z()
(c, d) = z()
k = (a * 60 + c * 60 + b + d) // 2
gh = lambda w: ('' if w > 9 else '0') + str(w)
print(gh(k // 60), ':', gh(k % 60), sep='')


from sys import stdin, stdout
from collections import Counter
for _ in range(1):
	(h1, m1) = map(int, stdin.readline().split(':'))
	(h2, m2) = map(int, stdin.readline().split(':'))
	hrs1 = h1 * 60 + m1
	hrs2 = h2 * 60 + m2
	half = (hrs2 - hrs1) // 2
	h1 = (hrs1 + half) // 60
	m1 = (hrs1 + half) % 60
	h1 = str(h1)
	m1 = str(m1)
	if len(h1) != 2:
		h1 = '0' + h1
	if len(m1) != 2:
		m1 = '0' + m1
	print(h1 + ':' + m1)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
mins = (h2 * 60 + m1 + (h1 * 60 + m2)) // 2
h = mins // 60
m = mins % 60
if h < 10:
	h = '0' + str(h)
if m < 10:
	m = '0' + str(m)
print(str(h) + ':' + str(m))


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1)
h2 = int(h2)
m1 = int(m1)
m2 = int(m2)
if m2 > m1:
	d = h2 * 60 + m2 - (h1 * 60 + m1)
else:
	d = (h2 - h1 - 1) * 60 + (60 - m1 + m2)
d = d // 2
m = m1 + d % 60
h = h1 + d // 60
if m >= 60:
	h += m // 60
	m = m % 60
if 0 <= h <= 9:
	x = '0' + str(h)
else:
	x = str(h)
if 0 <= m <= 9:
	y = '0' + str(m)
else:
	y = str(m)
print(x + ':' + y)


a = input()
b = input()
c = int(a[:2])
d = int(b[:2])
e = int(a[-2:])
f = int(b[-2:])
g = (c + d) // 2
h = (e + f) // 2
if c % 2 == 0 and d % 2 == 1 or (c % 2 == 1 and d % 2 == 0):
	h = h + 30
g = str(g + h // 60)
h = str(h % 60)
if len(g) == 1:
	print('0' + g, end=':')
else:
	print(g, end=':')
if len(h) == 1:
	print('0' + h)
else:
	print(h)


s1 = input()
h1 = int(s1[:2])
m1 = int(s1[3:])
s2 = input()
h2 = int(s2[:2])
m2 = int(s2[3:])
tot1 = h1 * 60 + m1
tot2 = h2 * 60 + m2
diff = tot2 - tot1
diff //= 2
h1 += diff // 60
m1 += diff % 60
ans = ''
if m1 > 59:
	h1 += 1
	m1 %= 60
if len(str(h1)) == 1:
	ans += '0' + str(h1) + ':'
else:
	ans += str(h1) + ':'
if len(str(m1)) == 1:
	ans += '0'
ans += str(m1)
print(ans)


(n, m) = map(int, input().split(':'))
(n1, m1) = map(int, input().split(':'))
a = n * 60 + m
b = n1 * 60 + m1
c = (a + b) // 2
n2 = str(c // 60)
m2 = str(c % 60)
if len(n2) == 1:
	n2 = '0' + n2
if len(m2) == 1:
	m2 = '0' + m2
print(n2 + ':' + m2)


a = input()
b = input()
(a_hr, a_min) = map(int, a.split(':'))
(b_hr, b_min) = map(int, b.split(':'))
dif = 60 * (b_hr - a_hr) + (b_min - a_min)
dif //= 2
mins = dif % 60
a_min += mins
hrs = dif // 60 + a_min // 60
a_min %= 60
a_hr += hrs
out = '0' + str(a_hr)
out = out[-2:] + ':'
out_min = '0' + str(a_min)
out += out_min[-2:]
print(out)


a = input()
b = input()
h1 = int(a[:2])
m1 = int(a[3:])
h2 = int(b[:2])
m2 = int(b[3:])
a = h2 * 60 + m2 - (h1 * 60 + m1)
a = a // 2
h1 = h1 + a // 60
m1 = m1 + (a - a // 60 * 60)
if m1 > 59:
	h1 += 1
	m1 = m1 - 60
print(str(h1).rjust(2, '0') + ':' + str(m1).rjust(2, '0'))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
m = ((h2 - h1) * 60 + m2 - m1) // 2
h3 = m // 60 + h1
m3 = m % 60 + m1
if m3 > 59:
	h3 += 1
	m3 = m3 % 60
if h3 < 10:
	print(0, end='')
	print(h3, end=':')
else:
	print(h3, end=':')
if m3 < 10:
	print(0, end='')
	print(m3)
else:
	print(m3)


a = input()
b = input()
a_hours = int(a[:2])
a_mins = int(a[3:])
b_hours = int(b[:2])
b_mins = int(b[3:])
mins = (b_hours - a_hours) * 60 + b_mins - a_mins
mins //= 2
a_real_mins = a_hours * 60 + a_mins
mins += a_real_mins
hours = mins // 60
mins = mins % 60
hours = str(hours)
mins = str(mins)
if len(hours) < 2:
	hours = '0' + hours
if len(mins) < 2:
	mins = '0' + mins
print(hours + ':' + mins)


def lena(n):
	c = 0
	while n:
		c = c + 1
		n = n // 10
	return c
a = input()
b = input()
h1 = int(a[0:2])
m1 = int(a[3:])
h2 = int(b[0:2])
m2 = int(b[3:])
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t3 = (t1 + t2) // 2
h3 = t3 // 60
m3 = t3 % 60
if lena(h3) == 1:
	q = str(h3)
	h3 = '0' + q
if lena(m3) == 1:
	w = str(m3)
	m3 = '0' + w
if m3 == 0:
	g = '00'
	m3 = str(m3)
	m3 = g
if h3 == 0:
	e = '00'
	h3 = str(h3)
	h3 = e
print(str(h3) + ':' + str(m3))


import math
time1 = input()
time2 = input()
h1 = int(time1.split(':')[0])
h2 = int(time2.split(':')[0])
m1 = int(time1.split(':')[1])
m2 = int(time2.split(':')[1])
if m2 >= m1:
	contest_duration = m2 - m1
else:
	contest_duration = m2 + 60 - m1
	h2 = h2 - 1
contest_duration = contest_duration + (h2 - h1) * 60
contest_duration = int(contest_duration / 2)
hours = math.floor(contest_duration / 60)
ha = h1 + hours
if hours > 0:
	contest_duration = contest_duration - 60 * hours
ma = m1 + contest_duration
if ma >= 60:
	ma = ma - 60
	ha = ha + 1
ha = int(ha)
ma = int(ma)
if ha < 10:
	ha = '0' + str(ha)
if ma < 10:
	ma = '0' + str(ma)
print('{}:{}'.format(ha, ma))


while True:
	try:
		ha = input()
		hb = input()
		(h1, m1) = list(map(int, ha.split(':')))
		(h2, m2) = list(map(int, hb.split(':')))
		h1m = h1 * 60 + m1
		h2m = h2 * 60 + m2
		hmm = int(h1m + (h2m - h1m) / 2)
		hm = int(hmm / 60)
		mm = int(hmm % 60)
		hm = '0' + str(hm) if hm < 10 else str(hm)
		mm = '0' + str(mm) if mm < 10 else str(mm)
		print(hm + ':' + mm)
	except EOFError:
		break


t1 = input()
t2 = input()
h1 = int(int(t1[0]) * 10) + int(t1[1])
m1 = int(int(t1[3]) * 10) + int(t1[4])
h2 = int(int(t2[0]) * 10) + int(t2[1])
m2 = int(int(t2[3]) * 10) + int(t2[4])
tm = int(h1 * 60 + h2 * 60 + m1 + m2) / 2
h3 = int(tm / 60)
m3 = int(tm % 60)
if h3 >= 0 and h3 <= 9:
	print('0', end='')
	print(h3, end='')
else:
	print(h3, end='')
print(':', end='')
if m3 >= 0 and m3 <= 9:
	print('0', end='')
	print(m3, end='')
else:
	print(m3, end='')


a = input()
b = input()
ah = int(a[0:2])
am = int(a[3:5])
bh = int(b[0:2])
bm = int(b[3:5])
cm = int((bm + am) / 2)
if (ah + bh) % 2 == 0:
	ch = int((ah + bh) / 2)
else:
	ch = int((ah + bh) / 2)
	cm = cm + 30
if cm >= 60:
	cm = cm - 60
	ch = ch + 1
if ch >= 10:
	if cm >= 10:
		c = str(ch) + ':' + str(cm)
	if cm < 10:
		c = str(ch) + ':0' + str(cm)
if ch < 10:
	if cm >= 10:
		c = '0' + str(ch) + ':' + str(cm)
	if cm < 10:
		c = '0' + str(ch) + ':0' + str(cm)
print(c)


def military_time(time):
	hours = time[0]
	minutes = time[1]
	total = hours * 60 + minutes
	return total

def format_minutes(mid):
	minutes = str(int(mid % 60))
	if len(minutes) == 1:
		minutes = '0' + minutes
	return minutes

def format_hours(mid):
	hours = str(int(mid // 60))
	if len(hours) == 1:
		hours = '0' + hours
	return hours
start = military_time([int(i) for i in input().split(':')])
end = military_time([int(i) for i in input().split(':')])
change = end - start
mid = start + change / 2
print(f'{format_hours(mid)}:{format_minutes(mid)}')


p = input()
q = input()
t = (int(q[0:2]) * 60 + int(q[3:]) - (int(p[0:2]) * 60 + int(p[3:]))) // 2
w = int(p[0:2]) * 60 + int(p[3:]) + t
a = str(w // 60)
b = str(w % 60)
if len(a) == 1:
	a = '0' + a
if len(b) == 1:
	b = '0' + b
print(a + ':' + b)


s1 = input()
s2 = input()
h1 = 10 * int(s1[0]) + int(s1[1])
h2 = 10 * int(s2[0]) + int(s2[1])
m1 = 10 * int(s1[3]) + int(s1[4])
m2 = 10 * int(s2[3]) + int(s2[4])
a1 = h1 * 60 + m1
a2 = h2 * 60 + m2
a = (a1 + a2) // 2
h = a // 60
m = a - 60 * h
if h < 10:
	print('0', end='')
print(h, end='')
print(':', end='')
if m < 10:
	print(0, end='')
print(m)


(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
sum = (h2 + h1) * 60 + m2 + m1
sum //= 2
mh = sum // 60
mm = sum % 60
if mh < 10:
	mh = '0' + str(mh)
if mm < 10:
	mm = '0' + str(mm)
print(str(mh) + ':' + str(mm))


p = list(map(int, input().split(':')))
q = list(map(int, input().split(':')))

def f(p, q):
	a = p[0] * 60 + p[1]
	b = q[0] * 60 + q[1]
	c = (a + b) / 2
	print('%02.0f:%02.0f' % (c // 60, c % 60))

def g(p, q):
	a = p[0] * 60 + p[1]
	b = (q[0] + 24) * 60 + q[1]
	c = (b + a) / 2
	if c // 60 >= 24:
		print('%02.0f:%02.0f' % (c // 60 - 24, c % 60))
	else:
		print('%02.0f:%02.0f' % (c // 60, c % 60))
if p[0] * 60 + p[1] < q[0] * 60 + q[1]:
	f(p, q)
else:
	g(p, q)


(n, m) = map(int, input().split(':'))
(q, w) = map(int, input().split(':'))
s1 = n * 60 + m
s2 = q * 60 + w
s3 = (s2 + s1) // 2
print(s3 // 60 // 10, s3 // 60 % 10, ':', s3 % 60 // 10, s3 % 60 % 10, sep='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
d = (h2 - h1) * 60 + (m2 - m1)
ans_h = (h1 + h2 + (m1 + m2) // 60) // 2
pre = m1 + d // 2
ans_m = pre % 60
if ans_m >= 10 and ans_h >= 10:
	print(ans_h, end=':')
	print(ans_m)
elif ans_m >= 10 and ans_h < 10:
	print('0', end='')
	print(ans_h, end=':')
	print(ans_m)
elif ans_m < 10 and ans_h >= 10:
	print(ans_h, end=':0')
	print(ans_m)
else:
	print('0', end='')
	print(ans_h, end=':0')
	print(ans_m)


(s1, s2) = (input(), input())
(h1, m1) = (int(s1[:2]), int(s1[3:]))
(h2, m2) = (int(s2[:2]), int(s2[3:]))
res = (h2 * 60 + m2 + (h1 * 60 + m1)) // 2
x = str(res // 60)
if len(x) == 1:
	x = '0' + x
y = str(res % 60)
if len(y) == 1:
	y = '0' + y
print(x + ':' + y)


start = input()
end = input()
(h1, m1) = [int(i) for i in start.split(':')]
(h2, m2) = [int(i) for i in end.split(':')]
m1 += h1 * 60
m2 += h2 * 60
ans = (m1 + m2) // 2
(a, b) = (str(ans // 60), str(ans % 60))
if len(a) == 1:
	a = '0' + a
if len(b) == 1:
	b = '0' + b
print(a, ':', b, sep='')


begin = [i for i in input()]
end = [i for i in input()]
hour1 = int(str(begin[0]) + str(begin[1]))
minute1 = int(str(begin[3]) + str(begin[4]))
hour2 = int(str(end[0]) + str(end[1]))
minute2 = int(str(end[3]) + str(end[4]))
countine = hour2 * 60 + minute2 - minute1 - hour1 * 60
half = countine / 2
minutes = half - 60 * (half // 60)
hours = half // 60
a = minute1 + minutes
if a >= 60:
	hours += 1
	a = a - 60
if hour1 + hours < 10:
	hour = '0' + str(int(hour1 + hours))
else:
	hour = str(int(hour1 + hours))
if a < 10:
	minute = '0' + str(int(a))
else:
	minute = str(int(a))
all = hour + ':' + minute
print(all)


s1 = str(input())
s2 = str(input())
ss11 = int(s1[0] + s1[1])
ss12 = int(s1[3] + s1[4])
ss21 = int(s2[0] + s2[1])
ss22 = int(s2[3] + s2[4])
x1 = ss21 * 60 + ss22
x2 = ss11 * 60 + ss12
x3 = (x1 + x2) // 2
y = x3 // 60
z = x3 % 60
if y < 10:
	print(0, end='')
	print(y, end=':')
else:
	print(y, end=':')
if z < 10:
	print(0, end='')
	print(z)
else:
	print(z)


(h1, m1) = input().strip().split(':')
(h2, m2) = input().strip().split(':')
dur = (int(h2) - int(h1)) * 60 - int(m1) + int(m2)
dur //= 2
result = int(h1) * 60 + int(m1) + dur
qr = divmod(result, 60)
fh = str(qr[0])
fm = str(qr[1])
if len(fh) == 1:
	fh = '0' + fh
if len(fm) == 1:
	fm = '0' + fm
print(fh, ':', fm, sep='')


b = list(map(int, input().split(':')))
e = list(map(int, input().split(':')))
r = ((e[0] - b[0]) * 60 + (e[1] - b[1])) // 2
b[1] += r
b[0] += b[1] // 60
b[1] %= 60
b[0] = str(b[0])
b[1] = str(b[1])
print('0' * (2 - len(b[0])) + b[0], '0' * (2 - len(b[1])) + b[1], sep=':')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
tt = (t1 + t2) // 2
h = str(tt // 60)
m = str(tt % 60)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(f'{h}:{m}')


start = input()
end = input()
sh1 = int(start[:2])
sh2 = int(end[:2])
sm1 = int(start[3:])
sm2 = int(end[3:])
timeStart = 60 * sh1 + sm1
timeBet = 60 * sh2 + sm2 - timeStart
midTime = timeBet // 2
addTime = timeStart + midTime
h = str(addTime // 60)
if len(h) == 1:
	h = '0' + h
m = str(addTime % 60)
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1)
m1 = int(m1)
h2 = int(h2)
m2 = int(m2)
tot1 = h1 * 60 + m1
tot2 = h2 * 60 + m2
tot = (tot1 + tot2) / 2
h = int(tot / 60)
if h < 10:
	h = '0' + str(h)
else:
	h = str(h)
m = int(tot % 60)
if m < 10:
	m = '0' + str(m)
else:
	m = str(m)
print(h + ':' + m)


s1 = input()
s2 = input()
t1 = int(s1.split(':')[0]) * 60 + int(s1.split(':')[1])
t2 = int(s2.split(':')[0]) * 60 + int(s2.split(':')[1])
t3 = (t1 + t2) // 2
if t3 // 60 < 10:
	print('0' + str(t3 // 60), end=':')
else:
	print(str(t3 // 60), end=':')
if t3 % 60 < 10:
	print('0' + str(t3 % 60))
else:
	print(str(t3 % 60))


(hi, mi) = input().split(':')
hi = int(hi)
mi = int(mi)
(hf, mf) = input().split(':')
hf = int(hf)
mf = int(mf)
ti = hi * 60 + mi
tf = hf * 60 + mf
if hi <= hf:
	d = tf - ti
else:
	d = 1440 - ti + tf
d //= 2
ti += d
print('%02d:%02d' % (ti // 60 % 24, ti % 60))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
h = (a * 60 + c * 60 + b + d) // 2
print('{:02d}:{:02d}'.format(int(h // 60), int(h % 60)))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
ans = (60 * h1 + m1 + 60 * h2 + m2) // 2
a = ans // 60
if a < 10:
	a = '0' + str(a)
b = ans % 60
if b < 10:
	b = '0' + str(b)
print(a, ':', b, sep='')


(hor1, min1) = map(int, input().split(':'))
(hor2, min2) = map(int, input().split(':'))
horas = hor1 + hor2
minutos = min1 + min2
if minutos >= 60:
	minutos = minutos - 60
	horas = horas + 1
if horas % 2 == 1:
	horas = horas - 1
	minutos = minutos + 60
if horas // 2 < 10:
	horasStr = '0' + str(horas // 2)
else:
	horasStr = str(horas // 2)
if minutos // 2 < 10:
	minutosStr = '0' + str(minutos // 2)
else:
	minutosStr = str(minutos // 2)
print(horasStr + ':' + minutosStr)


(t, t1) = map(int, input().split(':'))
(t2, t3) = map(int, input().split(':'))
t = (t2 * 3600 + t3 * 60 - (t * 3600 + t1 * 60)) // 2 + t * 3600 + t1 * 60
if t // 3600 < 10:
	print(0, end='')
print(t // 3600, ':', end='', sep='')
if t % 3600 // 60 < 10:
	print(0, end='')
print(t % 3600 // 60, sep='')


(horas_inicio, minutos_inicio) = [int(c) for c in input().split(':')]
(horas_fim, minutos_fim) = [int(c) for c in input().split(':')]
tempo_inicio_em_min = horas_inicio * 60 + minutos_inicio
tempo_fim_em_min = horas_fim * 60 + minutos_fim
duracao_em_min = tempo_fim_em_min - tempo_inicio_em_min
tempo_medio_em_min = tempo_inicio_em_min + duracao_em_min // 2
horas_medio = tempo_medio_em_min // 60
minutos_medio = tempo_medio_em_min % 60
horas = str(horas_medio)
minutos = str(minutos_medio)
horas = horas.zfill(2)
minutos = minutos.zfill(2)
print(horas + ':' + minutos)


s1 = input()
s2 = input()
h1 = int(s1[:2])
m1 = int(s1[3:])
h2 = int(s2[:2])
m2 = int(s2[3:])
x = (60 - m1 + (h2 - (h1 + 1)) * 60 + m2) // 2
h = x // 60
m = x % 60
if m1 + m >= 60:
	h = h + h1 + 1
	m = (m1 + m) % 60
else:
	h = h + h1
	m = m + m1
if h < 10:
	print('0', end='')
	print(h, end='')
else:
	print(h, end='')
print(':', end='')
if m < 10:
	print('0', end='')
	print(m, end='')
else:
	print(m)


a = str(input())
b = str(input())
a1 = int(a[:2])
a2 = int(a[3:])
b1 = int(b[:2])
b2 = int(b[3:])
ab = a1 + b1
if a2 + b2 >= 60:
	abm = a2 + b2 - 60
	ab += 1
else:
	abm = a2 + b2
if ab % 2 != 0:
	ab = ab // 2
	abm = abm // 2 + 30
else:
	ab = ab // 2
	abm = abm // 2
if len(str(ab)) == 1:
	ab = '0' + str(ab)
if len(str(abm)) == 1:
	abm = '0' + str(abm)
print(ab, ':', abm, sep='')


(st_h, st_m) = [int(i) for i in input().split(':')]
(en_h, en_m) = [int(i) for i in input().split(':')]
razn = en_h * 60 + en_m - st_h * 60 - st_m
razn /= 2
(razn_h, razn_m) = (razn // 60, razn % 60)
st_h = (st_h + razn_h) % 24
st_m = st_m + razn_m
if st_m >= 60:
	st_h = (st_h + 1) % 24
	st_m %= 60
str_h = '0' + str(int(st_h)) if st_h < 10 else str(int(st_h))
str_m = '0' + str(int(st_m)) if st_m < 10 else str(int(st_m))
print('{}:{}'.format(str_h, str_m))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = (t1 + t2) // 2
h = t // 60
m = t % 60
h = str(h)
m = str(m)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print('{}:{}'.format(h, m))


t1 = [int(i) for i in input().split(':')]
t2 = [int(i) for i in input().split(':')]
time1 = t1[0] * 60 + t1[1]
time2 = t2[0] * 60 + t2[1]
div = (time1 + time2) / 2
h = div / 60
m = div % 60
h = int(h)
m = int(m)
if h < 10:
	h = '0' + str(h)
if m < 10:
	m = '0' + str(m)
print(str(h) + ':' + str(m))


(hi, mi) = input().split(':')
(hf, mf) = input().split(':')
hi = int(hi)
mi = int(mi)
hf = int(hf)
mf = int(mf)
d = hf * 60 + mf - (hi * 60 + mi)
d //= 2
mi += d % 60
if mi >= 60:
	hi += 1
	mi %= 60
hi += d // 60
print('%02d:%02d' % (hi, mi))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t3 = (t2 - t1) // 2
h3 = h1 + t3 // 60
m3 = m1 + t3 % 60
if m3 >= 60:
	h3 += 1
	m3 -= 60
sh3 = str(h3)
if len(sh3) == 1:
	sh3 = '0' + sh3
sm3 = str(m3)
if len(sm3) == 1:
	sm3 = '0' + sm3
print(f'{sh3}:{sm3}')


a = input()
x = int(a[0:2])
y = int(a[3:])
x = 60 * x
b = input()
r = int(b[0:2])
s = int(b[3:])
r = 60 * r
total = (r + s + (x + y)) // 2
ans = total // 60
if ans <= 9:
	s = '0' + str(ans)
else:
	s = str(ans)
minute = total % 60
if minute <= 9:
	k = '0' + str(minute)
else:
	k = str(minute)
print(s + ':' + k)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
if t1 > t2:
	t2 += 24 * 60
t3 = (t2 - t1 >> 1) + t1
print(f'{t3 // 60:02}:{t3 % 60:02}')


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
avg = (t1 + t2) // 2
h = avg // 60
m = avg % 60
if h // 10 == 0:
	print('0', h, sep='', end='')
else:
	print(h, end='')
print(':', end='')
if m // 10 == 0:
	print('0', m, sep='', end='')
else:
	print(m, end='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
l1 = h1 * 60 + m1
l2 = h2 * 60 + m2
n = (l1 + l2) / 2
h = int(int(n) / 60)
m = int(int(n) % 60)
print(format(h, '02') + ':' + format(m, '02'))


h1m1 = input()
h2m2 = input()
m3 = (int(h1m1[3:]) + int(h2m2[3:])) // 2
h3 = int(h1m1[:2]) / 2 + int(h2m2[:2]) / 2
if int(h3) != h3:
	m3 += int(float(str(h3)[str(h3).find('.'):]) * 60)
	h3 = int(str(h3)[:str(h3).find('.')])
	if m3 >= 60:
		h3 += int(m3 // 60)
		m3 = int(m3 % 60)
else:
	h3 = int(h3)
if m3 >= 0 and m3 < 10:
	m3 = '0' + str(m3)
if h3 >= 0 and h3 < 10:
	h3 = '0' + str(h3)
h3 = str(h3)
m3 = str(m3)
print(h3 + ':' + m3)


from datetime import datetime
d = datetime.strptime(input(), '%H:%M')
d2 = datetime.strptime(input(), '%H:%M')
print((d + (d2 - d) / 2).strftime('%H:%M'))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
M1 = h1 * 60 + m1
M2 = h2 * 60 + m2
MID = (M2 + M1) // 2
print(f'{MID // 60:02d}:{MID % 60:02d}')


(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
m = 0
if h1 == h2:
	m = m2 - m1 + 1
else:
	if h1 > h2:
		h2 = 24 + h2
	m = (h2 - h1) * 60
	if m1 <= m2:
		m = m + (m2 - m1)
	else:
		m = m - 60
		m = m2 + 60 - m1
hm = mm = 0
m = m // 2
h1 = h1 + m // 60
h1 = h1 % 24
rem = 60 - m1
m = m % 60
if rem > m:
	hm = h1
	mm = m1 + m
elif rem == m:
	hm = h1 + 1
	if hm == 24:
		hm = 0
	mm = 0
else:
	mm = m - rem
	hm = h1 + 1
	if hm == 24:
		hm = 0
print('{:02d}'.format(hm) + ':' + '{:02d}'.format(mm))


gi = lambda : list(map(int, input().split(':')))
l = gi()
m = gi()
x = l[0] * 60 + l[1]
y = m[0] * 60 + m[1]
ans = (x + y) // 2
if ans // 60 < 10:
	print('0' + str(ans // 60), end=':')
else:
	print(str(ans // 60), end=':')
if ans % 60 < 10:
	print('0' + str(ans % 60))
else:
	print(str(ans % 60))


a = input()
b = input()
m1 = (ord(a[3]) - 48) * 10 + (ord(a[4]) - 48)
m2 = (ord(b[3]) - 48) * 10 + (ord(b[4]) - 48)
h1 = (ord(a[0]) - 48) * 10 + (ord(a[1]) - 48)
h2 = (ord(b[0]) - 48) * 10 + (ord(b[1]) - 48)
y = m1 + h1 * 60
z = m2 + h2 * 60
m = (y + z) // 2
f = m // 60
g = m % 60
if f < 10:
	print('0', end='')
	print(f, end=':')
else:
	print(f, end=':')
if g < 10:
	print('0', end='')
	print(g, end='')
else:
	print(g, end='')


import math, string, itertools, fractions, heapq, collections, re, array, bisect, sys, copy, functools
sys.setrecursionlimit(10 ** 7)
inf = 10 ** 20
eps = 1.0 / 10 ** 10
mod = 10 ** 9 + 7
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]

def LI():
	return list(map(int, sys.stdin.readline().split()))

def LLI():
	return [tuple(map(int, l.split())) for l in sys.stdin]

def LI_():
	return [int(x) - 1 for x in sys.stdin.readline().split()]

def LF():
	return [float(x) for x in sys.stdin.readline().split()]

def LS():
	return sys.stdin.readline().split()

def I():
	return int(sys.stdin.readline())

def F():
	return float(sys.stdin.readline())

def S():
	return input()

def pf(s):
	return print(s, flush=True)

def main():
	a = list(map(int, S().split(':')))
	b = list(map(int, S().split(':')))
	c = a[0] * 60 + a[1]
	d = b[0] * 60 + b[1]
	e = (c + d) // 2
	return '{:02d}:{:02d}'.format(e // 60, e % 60)
print(main())


(h1, w1) = map(int, input().split(':'))
(h2, w2) = map(int, input().split(':'))
m1 = h1 * 60 + w1
m2 = h2 * 60 + w2
if m1 > m2:
	tmp = 1440 - m1
	m = m1 + (tmp + m2) / 2
	m %= 1440
else:
	m = (m1 + m2) / 2
print(int(m // 60 // 10), int(m // 60 % 10), ':', int(m % 60 // 10), int(m % 60 % 10), sep='')


import sys
import math
import bisect
import itertools
import random

def main():
	s = input()
	h1 = int(s[0:2])
	m1 = int(s[3:])
	t1 = h1 * 60 + m1
	s = input()
	h2 = int(s[0:2])
	m2 = int(s[3:])
	t2 = h2 * 60 + m2
	t3 = (t1 + t2) // 2
	h3 = t3 // 60
	m3 = t3 % 60
	print('%02d:%02d' % (h3, m3))
main()


t1 = input()
t2 = input()
(starthour, startmin) = [int(x) for x in t1.strip().split(':')]
(endhour, endmin) = [int(x) for x in t2.strip().split(':')]
temp1 = starthour * 60 + startmin
temp2 = endhour * 60 + endmin
contesttime = temp2 - temp1
halftime = int(contesttime / 2)
newstart = startmin + halftime
rem = newstart % 60
quo = newstart // 60
newhour = starthour + quo
newmin = rem
print('%02d' % newhour, end='')
print(':', end='')
print('%02d' % newmin)


(sh, sm) = map(int, input().split(':'))
(eh, em) = map(int, input().split(':'))
total_start = sh * 60 + sm
total_end = eh * 60 + em
total = (total_end + total_start) // 2
ts = total // 60
tm = total % 60
if ts < 10:
	ts = '0' + str(ts)
if tm < 10:
	tm = '0' + str(tm)
print('{}:{}'.format(ts, tm))


(start_hr, start_min) = map(int, input().split(':'))
(end_hr, end_min) = map(int, input().split(':'))

def convertIntoMinutes(hr, minutes):
	return hr * 60 + minutes

def convertIntoHours(time_in_min):
	(hr, minutes) = (time_in_min // 60, time_in_min % 60)
	if hr in range(10):
		hr = '0' + str(hr)
	if minutes in range(10):
		minutes = '0' + str(minutes)
	return str(hr) + ':' + str(minutes)
total_time = convertIntoMinutes(start_hr, start_min) + convertIntoMinutes(end_hr, end_min)
half_time = total_time // 2
print(convertIntoHours(half_time))


(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
if m2 <= m1:
	m2 = 60 + m2
	h2 -= 1
m = (m1 + m2 + 60 * (h2 - h1)) // 2
h = h1 + m // 60
m = m % 60
if h < 10:
	h = '0' + str(h)
if m < 10:
	m = '0' + str(m)
print(str(h) + ':' + str(m))


from fractions import gcd
from datetime import date, timedelta
from heapq import *
import math
from collections import defaultdict, Counter, deque
import sys
from bisect import *
import itertools
import copy
sys.setrecursionlimit(10 ** 7)
MOD = 10 ** 9 + 7

def main():
	(a, b) = map(int, input().split(':'))
	(c, d) = map(int, input().split(':'))
	t = (c - a) * 60 + d - b
	t //= 2
	ansa = a + t // 60
	t %= 60
	ansb = t + b
	if ansb >= 60:
		if ansa + 1 < 10:
			ansa = '0' + str(ansa + 1)
		else:
			ansa = ansa + 1
		if ansb % 60 < 10:
			ansb = '0' + str((b + t) % 60)
		else:
			ansb = (b + t) % 60
	else:
		if ansa < 10:
			ansa = '0' + str(ansa)
		if ansb < 10:
			ansb = '0' + str(b + t)
	print(ansa, ':', ansb, sep='')
main()


s = input()
p = input()
h1 = int(s[0:2])
h2 = int(p[0:2])
m1 = int(s[3:5])
m2 = int(p[3:5])
res = int((h1 * 60 + m1 + (h2 * 60 + m2)) / 2)
h3 = int(res / 60)
m3 = res % 60
if h3 <= 9:
	print('0', h3, ':', sep='', end='')
else:
	print(h3, ':', sep='', end='')
if m3 <= 9:
	print('0', m3, sep='', end='')
else:
	print(m3, end='')


t1 = input()
t2 = input()
if int(t2[:2]) - int(t1[:2]) > 1:
	if int(t1[3:]) == int(t2[3:]):
		r1 = (int(t1[:2]) + int(t2[:2])) // 2
		if (int(t1[:2]) + int(t2[:2])) % 2 == 1:
			r2 = int(t1[3:]) + 30
		else:
			r2 = int(t1[3:])
		if r2 >= 60:
			r1 = r1 + 1
			r2 = r2 - 60
		if r2 // 10 == 0:
			k = '0' + str(r2)
		else:
			k = str(r2)
		if r1 // 10 == 0:
			l = '0' + str(r1)
		else:
			l = str(r1)
		print(l + ':' + k)
	elif int(t2[3:]) > int(t1[3:]):
		r1 = (int(t1[:2]) + int(t2[:2])) // 2
		r2 = (int(t1[3:]) + int(t2[3:])) // 2
		if (int(t1[:2]) + int(t2[:2])) % 2 == 1:
			r2 = r2 + 30
		if r2 >= 60:
			r1 = r1 + 1
			r2 = r2 - 60
		if r2 // 10 == 0:
			k = '0' + str(r2)
		else:
			k = str(r2)
		if r1 // 10 == 0:
			l = '0' + str(r1)
		else:
			l = str(r1)
		print(l + ':' + k)
	elif int(t2[3:]) < int(t1[3:]):
		r2 = (60 + int(t2[3:]) - int(t1[3:])) // 2
		r1 = (int(t1[:2]) + int(t1[:2])) // 2
		if r2 // 10 == 0:
			k = '0' + str(r2)
		else:
			k = str(r2)
		print(str(r1 - 1) + ':' + k)
elif int(t2[:2]) - int(t1[:2]) == 1:
	if int(t1[3:]) >= int(t2[3:]):
		r2 = (60 - int(t1[3:]) + int(t2[3:])) // 2
		k = int(t1[3:]) + r2
		if int(t1[3:]) + 30 < 60:
			k = int(t1[3:]) + r2
			if k // 10 == 0:
				k = '0' + str(k)
			else:
				k = str(k)
			print(t1[:2] + ':' + k)
		elif int(t1[3:]) + 30 >= 60:
			k = int(t2[3:]) - r2
			if k // 10 == 0:
				k = '0' + str(k)
			else:
				k = str(k)
			print(t2[:2] + ':' + k)
	elif int(t1[3:]) < int(t2[3:]):
		r2 = (60 + int(t2[3:]) - int(t1[3:])) // 2
		if int(t1[3:]) + 30 > 60:
			print(t2[:2] + ':' + str(int(t2[3:]) - r2))
		elif int(t1[:2]) + 30 < 60:
			print(t1[:2] + ':' + str(int(t1[3:]) + r2))
else:
	r2 = (int(t2[3:]) + int(t1[3:])) // 2
	if r2 // 10 == 0:
		k = '0' + str(r2)
	else:
		k = str(r2)
	print(t1[:2] + ':' + k)


a = input()
b = input()
(h1, m1) = (int(a[:2]), int(a[3:]))
(h2, m2) = (int(b[:2]), int(b[3:]))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = t2 - t1
t //= 2
t += t1
h = t // 60
m = t % 60
print(h // 10, h % 10, ':', m // 10, m % 10, sep='')


import time
(a, b) = list(map(int, input().split(':')))
(c, d) = list(map(int, input().split(':')))
start = a * 60 + b
stop = c * 60 + d
diff = (stop - start) // 2
new_time = start + diff
m = new_time % 60
h = new_time // 60
if h > 9 and m > 9:
	print(str(h) + ':' + str(m))
elif h > 9 and m <= 9:
	print(str(h) + ':' + '0' + str(m))
elif h <= 9 and m > 9:
	print('0' + str(h) + ':' + str(m))
else:
	print('0' + str(h) + ':' + '0' + str(m))


s = input().split(':')
s1 = input().split(':')
ch1 = int(s[0])
m1 = int(s[1])
ch2 = int(s1[0])
m2 = int(s1[1])
vr1 = ch1 * 60 + m1
vr2 = ch2 * 60 + m2
rz = vr2 - vr1
rz //= 2
ch1 = ch1 * 60 + m1 + rz
chas = ch1 // 60
mn = ch1 - chas * 60
if chas < 10:
	s = '0'
	s += str(chas)
	chas = s
if mn < 10:
	s = '0'
	s += str(mn)
	mn = s
print(chas, mn, sep=':')


first = input()
second = input()
h1 = int(first[0]) * 10 + int(first[1])
h2 = int(second[0]) * 10 + int(second[1])
m1 = int(first[3]) * 10 + int(first[4])
m2 = int(second[3]) * 10 + int(second[4])
r = int((h1 * 60 + m1 + (h2 * 60 + m2)) / 2)
h3 = int(r / 60)
m3 = int(r % 60)
if h3 >= 10 and m3 >= 10:
	print(f'{h3}:{m3}')
elif h3 < 10 and m3 < 10:
	print(f'0{h3}:0{m3}')
elif h3 < 10 and m3 >= 10:
	print(f'0{h3}:{m3}')
elif h3 >= 10 and m3 < 10:
	print(f'{h3}:0{m3}')


ch = input()
ch1 = input()
L = ch.split(':')
L1 = ch1.split(':')
m = int(L[0]) * 60 + int(L[1])
m1 = int(L1[0]) * 60 + int(L1[1])
moy = (m1 + m) // 2
print(f'{moy // 60:02}:{moy % 60:02}')


import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
val = list(map(int, input().split(':')))
h1 = val[0]
m1 = val[1]
val0 = list(map(int, input().split(':')))
h2 = val0[0]
m2 = val0[1]
hdiff = h2 - h1
mindiff = m2 - m1
tot = (h2 - h1) * 60 + m2 - m1
mid = tot // 2
endh = h1 + mid // 60
endm = (m1 + mid % 60) % 60
if m1 + mid % 60 >= 60:
	endh += 1
if endh < 10:
	endh = '0' + str(endh)
if endm < 10:
	endm = '0' + str(endm)
print(str(endh) + ':' + str(endm))


(x, y) = map(int, input().split(':'))
(x1, y1) = map(int, input().split(':'))
x5 = (x1 + x) // 2
x2 = (x1 + x) % 2
x4 = x2 * 60
y3 = y1 + y + x4
y3 = y3 // 2
x3 = x5 + y3 // 60
if x3 < 10:
	x3 = str(0) + str(x3)
y3 = y3 % 60
if y3 < 10:
	y3 = str(0) + str(y3)
print(str(x3) + ':' + str(y3))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
q1 = h1 * 60 + m1
q2 = h2 * 60 + m2
q3 = (q1 + q2) / 2
h3 = int(q3 // 60)
m3 = int(q3 % 60)
print('{:02d}:{:02d}'.format(h3, m3))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
minutes = (h2 * 60 + m2 - (h1 * 60 + m1)) // 2
hrs = minutes // 60
mins = minutes % 60
if m1 + mins > 59:
	print(f'{h1 + hrs + 1:2.0f}:{m1 + mins - 60:2.0f}'.replace(' ', '0'))
else:
	print(f'{h1 + hrs:2.0f}:{m1 + mins:2.0f}'.replace(' ', '0'))


(m1, s1) = map(int, input().split(':'))
(m2, s2) = map(int, input().split(':'))
t = (m1 * 60 + s1 + m2 * 60 + s2) // 2
print(str(t // 60).rjust(2, '0'), str(t % 60).rjust(2, '0'), sep=':')


def main():
	t1 = input('')
	t2 = input('')
	h1 = int(t1[0:2])
	m1 = int(t1[3:5])
	h2 = int(t2[0:2])
	m2 = int(t2[3:5])
	if h2 < h1 or (h2 == h1 and m2 < m1):
		h2 = h2 + 24
	diffMin = (h2 - h1) * 60 + (m2 - m1)
	tim = m1 + diffMin / 2
	retH = str(int(h1 + tim // 60))
	retM = str(int(tim % 60))
	if len(retH) == 1:
		retH = '0' + retH
	if len(retM) == 1:
		retM = '0' + retM
	return retH + ':' + retM
print(main())


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
x = a * 60 + b
y = c * 60 + d
z = (x + y) // 2
print('%02d:%02d' % (z // 60, z % 60))


b = input()
a = input()
p = []
k = int(a[-2:]) + 60 * int(a[:2]) - (int(b[-2:]) + 60 * int(b[:2]))
kk = k // 2
t = kk + (int(b[-2:]) + 60 * int(b[:2]))
f = len(str(t // 60))
k = str(t // 60)
kk = str(t % 60)
if f == 1:
	k = str(t // 60).rjust(1 + len(str(t // 60)), '0')
y = len(str(t % 60))
if y == 1:
	kk = str(t % 60).rjust(1 + len(str(t % 60)), '0')
p.append(k)
p.append(':')
p.append(kk)
z = ''.join([str(i) for i in p])
print(z)


def main():
	start_time = list(map(int, input().split(':')))
	end_time = list(map(int, input().split(':')))
	st = start_time[0] * 60 + start_time[1]
	et = end_time[0] * 60 + end_time[1]
	mid = (st + et) // 2
	hours = mid // 60
	minutes = mid % 60
	if hours < 10:
		h = '0' + str(hours)
	else:
		h = str(hours)
	if minutes < 10:
		m = '0' + str(minutes)
	else:
		m = str(minutes)
	res = h + ':' + m
	print(res)
main()


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
(h1, m1) = (int(h1), int(m1))
(h2, m2) = (int(h2), int(m2))
s1 = h1 * 60 + m1
s2 = h2 * 60 + m2
s = int((s1 + s2) / 2)
print('{:02d}:{:02d}'.format(*divmod(s, 60)))


s = input().split(':')
s1 = input().split(':')
var = ((int(s1[0]) - int(s[0])) * 60 + int(s1[1]) - int(s[1])) // 2
ans = [0] * 2
ans[0] = str(var // 60 + int(s[0]))
ans[1] = str(var % 60 + int(s[1]))
if int(ans[1]) >= 60:
	ans[0] = str(int(ans[0]) + int(ans[1]) // 60)
	ans[1] = str(int(ans[1]) % 60)
if len(ans[0]) == 1:
	ans[0] = '0' + ans[0]
if len(ans[1]) == 1:
	ans[1] = '0' + ans[1]
print(':'.join(ans))


t1 = input().split(':')
t2 = input().split(':')
s1 = int(t1[0]) * 60 + int(t1[1])
s2 = int(t2[0]) * 60 + int(t2[1])
d = (s2 - s1) / 2
s1 += d
print('%02d:%02d' % (s1 / 60, s1 % 60))


t = 0
for _ in (0, 0):
	(h, m) = map(int, input().split(':'))
	t += h * 60 + m
print(f'{t // 120:02}:{t // 2 % 60:02}')


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
time = (a * 60 + c * 60 + b + d) // 2
print(str(time // 60).zfill(2) + ':' + str(time % 60).zfill(2))


(h1m1, h2m2) = (str(input()).split(':'), str(input()).split(':'))
time = ((int(h2m2[0]) - int(h1m1[0])) * 60 + int(h2m2[1]) - int(h1m1[1])) // 2
hours = int(h1m1[0]) + time // 60
mins = int(h1m1[1]) + time % 60
if mins >= 60:
	hours += 1
	mins -= 60
time = [str(hours), str(mins)]
if len(time[0]) == 1:
	time[0] = '0' + time[0]
if len(time[1]) == 1:
	time[1] = '0' + time[1]
print(time[0] + ':' + time[1])


A = [int(x) for x in input().split(':')]
min_a = 60 * A[0] + A[1]
B = [int(x) for x in input().split(':')]
min_b = 60 * B[0] + B[1]
result = (min_b + min_a + 1) // 2
print('%02d:%02d' % (result // 60, result % 60))


def go():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	t = (m2 - m1 + (h2 - h1) * 60) // 2
	m = m1 + t % 60
	h = str(h1 + t // 60 + m // 60)
	m = str(m % 60)
	if len(m) == 1:
		m = '0' + m
	if len(h) == 1:
		h = '0' + h
	return '{}:{}'.format(h, m)
print(go())


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1)
m1 = int(m1)
h2 = int(h2)
m2 = int(m2)
hh1 = h1 * 60 + m1
hh2 = h2 * 60 + m2
hhx = abs(hh1 - hh2) // 2
hhd = min(hh1, hh2) + hhx
hh = hhd // 60
mm = hhd % 60
x = str(hh)
y = str(mm)
if len(x) == 1:
	x = '0' + x
if len(y) == 1:
	y = '0' + y
print(x + ':' + y)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
h = (h1 + h2) // 2
if h * 2 == h1 + h2:
	m = (m1 + m2) // 2
else:
	m = (m1 + m2) // 2 + 30
if m >= 60:
	h = h + m // 60
	m = m - 60 * (m // 60)
print('%02d' % h, end=':')
print('%02d' % m)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t = (h1 * 60 + h2 * 60 + m1 + m2) // 2
h = t // 60
m = t - h * 60
print('{:02d}:{:02d}'.format(h, m))


t = input()
t1 = t.split(':')
tot = int(t1[0]) * 60 + int(t1[1])
t = input()
t1 = t.split(':')
tot2 = int(t1[0]) * 60 + int(t1[1])
tot = (tot + tot2) // 2
hrs = tot // 60
mns = tot % 60
if hrs < 10:
	hrs = '0' + str(hrs)
if mns < 10:
	mns = '0' + str(mns)
print(str(hrs) + ':' + str(mns))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
tm = (t1 + t2) // 2
print(str(tm // 60 // 10) + str(tm // 60 % 10) + ':' + str(tm % 60 // 10) + str(tm % 60 % 10))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
M1 = h1 * 60 + m1
M2 = h2 * 60 + m2
M = (M2 - M1) // 2
M = M1 + M
h = M // 60
m = M % 60
print('{:0>2}:{:0>2}'.format(h, m))


from datetime import timedelta, datetime
start_time = input()
end_time = input()
time_format = '%H:%M'
start = datetime.strptime(start_time, time_format)
end = datetime.strptime(end_time, time_format)
half_seconds = (end - start) / 2
half = start + half_seconds
print(half.strftime(time_format))


s1 = input()
(h1, m1) = (int(s1[:2]), int(s1[3:]))
s2 = input()
(h2, m2) = (int(s2[:2]), int(s2[3:]))
initial = h1 * 60 + m1
diff = (h2 * 60 + m2 - initial) / 2
ans = initial + diff
ans_h = int(ans // 60)
ans_m = int(ans % 60)
print('%02d:%02d' % (ans_h, ans_m))


string1 = list(map(int, input().split(':')))
string2 = list(map(int, input().split(':')))
time = 60 * (string1[0] + string2[0]) + string2[1] + string1[1]
time //= 2
x1 = time // 60
if x1 < 10:
	x1 = '0' + str(x1)
else:
	x1 = str(x1)
x2 = time % 60
if x2 < 10:
	x2 = '0' + str(x2)
else:
	x2 = str(x2)
print(x1 + ':' + x2)


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
n1 = a * 60 + b
n2 = c * 60 + d
middle = (n2 + n1) // 2
print(str(middle // 60).zfill(2) + ':' + str(middle % 60).zfill(2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = (t2 + t1) // 2
(h, m) = (t // 60, t % 60)
if not h // 10:
	h = f'0{h}'
if not m // 10:
	m = f'0{m}'
print(f'{h}:{m}')


def pretty(x):
	s = str(x)
	if len(s) < 2:
		s = '0' + s
	return s
(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
s1 = h1 * 60 + m1
s2 = h2 * 60 + m2
s = (s1 + s2) // 2
print(pretty(s // 60) + ':' + pretty(s % 60))


n = list(map(int, input().split(':')))
s = list(map(int, input().split(':')))
d = (s[0] - n[0]) * 60 + (s[1] - n[1])
s = d // 2
k = s // 60
t = s % 60
y = (t + n[1]) // 60
u = (t + n[1]) % 60
print(str(y + n[0] + k).zfill(2) + ':' + str(u).zfill(2))


one = [int(i) for i in input().split(':')]
two = [int(i) for i in input().split(':')]
mins = (two[0] - (one[0] + 1)) * 60 + two[1] + 60 - one[1]
mins = mins // 2
ans1 = one[0] + mins // 60
ans2 = one[1] + mins % 60
if ans2 >= 60:
	ans1 += 1
	ans2 = ans2 % 60
if ans1 < 10:
	print(0, ans1, sep='', end='')
else:
	print(ans1, sep='', end='')
print(':', end='')
if ans2 < 10:
	print(0, ans2, sep='', end='')
else:
	print(ans2, sep='', end='')


(a, b) = (input().split(':'), input().split(':'))
a = int(a[0]) * 60 + int(a[1])
b = int(b[0]) * 60 + int(b[1])
t = (a + b) // 2
print(str(t // 60).rjust(2, '0') + ':' + str(t % 60).rjust(2, '0'))


dep = input().split(':')
arr = input().split(':')
depMin = 60 * int(dep[0]) + int(dep[1])
depArr = 60 * int(arr[0]) + int(arr[1])
mil = int((depMin + depArr) / 2)
heure = mil // 60
minu = mil % 60
if minu // 10 < 1 and heure // 10 < 1:
	print('0' + str(heure) + ':' + '0' + str(minu))
elif minu // 10 < 1:
	print(str(heure) + ':' + '0' + str(minu))
elif heure // 10 < 1:
	print('0' + str(heure) + ':' + str(minu))
else:
	print(str(heure) + ':' + str(minu))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
a = h2 * 60 + m2 - (h1 * 60 + m1)
a = a // 2
h1 = h1 * 60 + m1 + a
h3 = h1 // 60
m3 = h1 % 60
if len(str(h3)) == 1:
	h3 = '0' + str(h3)
else:
	h3 = str(h3)
if len(str(m3)) == 1:
	m3 = '0' + str(m3)
else:
	m3 = str(m3)
print(h3 + ':' + m3)


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
x = (a * 60 + c * 60 + b + d) // 2
if x // 60 >= 10:
	print(str(x // 60) + ':', end='')
else:
	print('0' + str(x // 60) + ':', end='')
if x % 60 >= 10:
	print(str(x % 60))
else:
	print('0' + str(x % 60))


print('%02d:%02d' % divmod(sum(map(lambda t: t[0] * 60 + t[1], (tuple(map(int, input().split(':'))) for i in range(2)))) // 2, 60))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
m = (h1 + h2) % 2
h = (h1 + h2) // 2
m = 30 * m + (m1 + m2) / 2
h = h + m // 60
m = m % 60
ans = ''
if len(str(int(h))) < 2:
	ans = ans + '0'
ans = ans + str(int(h)) + ':'
if len(str(int(m))) < 2:
	ans = ans + '0'
ans = ans + str(int(m))
print(ans)


s = input()
t = input()
m1 = int(s[0:2]) * 60 + int(s[3:])
m2 = int(t[0:2]) * 60 + int(t[3:])
ans = (m1 + m2) // 2
h = str(ans // 60)
m = str(ans % 60)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


R = lambda : map(int, input().split())
t1 = input()
t2 = input()
(h1, m1) = t1.split(':')
(h2, m2) = t2.split(':')
total = (int(h1) * 60 + int(m1) + int(h2) * 60 + int(m2)) // 2
h = str(total // 60)
m = str(total % 60)
if len(m) == 1:
	m = '0' + m
if len(h) == 1:
	h = '0' + h
print(h + ':' + m)


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
num = h1 * 60 + m1 + h2 * 60 + m2
num //= 2
num2 = str(num // 60)
num3 = str(num % 60)
if len(num2) == 1:
	num2 = '0' + num2
if len(num3) == 1:
	num3 = '0' + num3
print(num2 + ':' + num3)


import sys

def input():
	return sys.stdin.readline().strip()

def list2d(a, b, c):
	return [[c] * b for i in range(a)]

def list3d(a, b, c, d):
	return [[[d] * c for j in range(b)] for i in range(a)]

def ceil(x, y=1):
	return int(-(-x // y))

def INT():
	return int(input())

def MAP():
	return map(int, input().split())

def LIST():
	return list(map(int, input().split()))

def Yes():
	print('Yes')

def No():
	print('No')

def YES():
	print('YES')

def NO():
	print('NO')
sys.setrecursionlimit(10 ** 9)
INF = float('inf')
MOD = 10 ** 9 + 7
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
time3 = (time1 + time2) // 2
h3 = time3 // 60
m3 = time3 % 60
print(str(h3).zfill(2) + ':' + str(m3).zfill(2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
h3 = str((time1 + time2) // 120)
m3 = str((time1 + time2) // 2 % 60)
if len(str(h3)) == 1:
	h3 = '0' + h3
if len(str(m3)) == 1:
	m3 = '0' + m3
print(h3 + ':' + m3)


(hh1, mm1) = input().split(':')
(hh2, mm2) = input().split(':')
t1 = int(hh1) * 60 + int(mm1)
t2 = int(hh2) * 60 + int(mm2)
hans = (t1 + t2) // 120
mans = (t1 + t2) // 2
mans = mans % 60
if hans <= 9:
	hans = '0' + str(hans)
if mans <= 9:
	mans = '0' + str(mans)
print(str(hans) + ':' + str(mans))


n = input()
m = input()
a = n.split(':')
b = m.split(':')
h = int(a[0])
h2 = int(b[0])
hh = h2 + h
if hh == 24 and h > h2:
	hh = 0
r = int(hh // 2)
rr = int(hh % 2 * 60 + (int(a[1]) + int(b[1]))) // 2
if rr >= 60:
	r += 1
	rr = rr % 60
if r < 10:
	print('0' + str(r) + ':', end='')
	if rr < 10:
		print('0' + str(rr))
	else:
		print(rr)
else:
	print(str(r) + ':', end='')
	if rr < 10:
		print('0' + str(rr))
	else:
		print(rr)


t1 = input()
t2 = input()
h1 = t1[:2]
m1 = t1[3:]
h2 = t2[:2]
m2 = t2[3:]
if h1[0] == '0':
	h1 = int(h1[1])
else:
	h1 = int(h1)
if m1[0] == '0':
	m1 = int(m1[1])
else:
	m1 = int(m1)
if h2[0] == '0':
	h2 = int(h2[1])
else:
	h2 = int(h2)
if m2[0] == '0':
	m2 = int(m2[1])
else:
	m2 = int(m2)
ans = (h1 * 60 + m1 + h2 * 60 + m2) // 2
h = ans // 60
m = ans % 60
h = str(h).zfill(2)
m = str(m).zfill(2)
print(h + ':' + m)


(h1, m1) = (int(i) for i in input().split(':'))
(h2, m2) = (int(i) for i in input().split(':'))
time = h2 * 60 + m2 - h1 * 60 - m1
time /= 2
time1 = h1 * 60 + m1 + time
h3 = int(time1 // 60)
m3 = int(time1 % 60)
if h3 < 10:
	h3 = '0' + str(h3)
if m3 < 10:
	m3 = '0' + str(m3)
print(h3, ':', m3, sep='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
sr = (h1 * 60 + m1 + h2 * 60 + m2) // 2
if len(str(sr // 60)) == 1:
	h = '0' + str(sr // 60)
else:
	h = str(sr // 60)
if len(str(sr % 60)) == 1:
	m = '0' + str(sr % 60)
else:
	m = str(sr % 60)
print(h + ':' + m)


(h1, m1) = (int(k) for k in input().split(':'))
(h2, m2) = (int(k) for k in input().split(':'))
Mid_m = 0
Mid_h = (h1 + h2) / 2
if Mid_h != int(Mid_h):
	Mid_m += 30
Mid_m += (m1 + m2) / 2
if Mid_m >= 60:
	Mid_h += Mid_m / 60
	Mid_m = Mid_m % 60
print(f'{str(int(Mid_h)).zfill(2)}:{str(int(Mid_m)).zfill(2)}')


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1)
m1 = int(m1)
h2 = int(h2)
m2 = int(m2)
hours = h2 - h1
minutes = m2 - m1
total = 60 * hours + minutes
total = int(total / 2)
h3 = 0
m3 = 0
while total >= 60:
	h3 += 1
	total -= 60
h3 += h1
m3 = total + m1
if m3 >= 60:
	m3 -= 60
	h3 += 1
result = f'{h3:02d}:{m3:02d}'
print(result)


(sh, sm) = map(int, input().split(':'))
(eh, em) = map(int, input().split(':'))
start = sh * 60 + sm
end = eh * 60 + em
res = (end - start) // 2 + start
print('{:0>2}:{:0>2}'.format(res // 60, res - res // 60 * 60))


def func(a, b):
	a = int(a)
	b = int(b)
	if len(str(a)) == 1:
		print('0' + str(a), end='')
	else:
		print(str(a), end='')
	print(':', end='')
	if len(str(b)) == 1:
		print('0' + str(b), end='')
	else:
		print(str(b), end='')
(a1, a2) = map(int, input().split(':'))
(b1, b2) = map(int, input().split(':'))
m1 = 60 * a1 + a2
m2 = 60 * b1 + b2
m = (m1 + m2) / 2
h = m // 60
s = m % 60
func(h, s)


S = input().split(':')
E = input().split(':')
if int(E[0]) > int(S[0]):
	time = 60 - int(S[1]) + (int(E[0]) - int(S[0]) - 1) * 60 + int(E[1])
else:
	time = int(E[1]) - int(S[1])
time = time // 2
HH = int(S[0])
MM = int(S[1]) + time
while MM >= 60:
	HH += 1
	MM -= 60
HH = HH % 24
print('{:02}:{:02}'.format(HH, MM))


a = input()
b = input()
a = a.split(':')
b = b.split(':')
mi = int(a[0]) * 60 + int(a[1])
mf = int(b[0]) * 60 + int(b[1])
mm = (mf - mi) // 2
newm = mi + mm
newm = [str(newm // 60), str(newm % 60)]
newm[0] = newm[0] if len(newm[0]) == 2 else '0' + newm[0]
newm[1] = newm[1] if len(newm[1]) == 2 else '0' + newm[1]
print(':'.join(newm))


start = list(map(int, input().split(':')))
end = list(map(int, input().split(':')))
hour = end[0] - start[0]
total = (start[-1] + end[-1] + hour * 60) // 2
resm = str(total % 60)
resh = str(start[0] + total // 60)

def fill(x):
	if len(x) < 2:
		res = ['0' * (2 - len(x)), x]
	else:
		res = [x]
	return ''.join(res)
res = [fill(resh), ':', fill(resm)]
print(''.join(res))


(n, m) = list(map(int, input().split(':')))
(k, p) = list(map(int, input().split(':')))
a = n * 60 + m
b = 60 * k + p
if b > a:
	s = (b + a) // 2
else:
	s = (b + 24 * 60 + a) // 2
a = s // 60
if a < 10:
	a = '0' + str(a)
else:
	a = str(a)
b = s % 60
if b < 10:
	b = '0' + str(b)
else:
	b = str(b)
print('{}:{}'.format(a, b))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
m = ((h2 - h1) * 60 + m2 - m1) / 2
print(int(h1 + (m1 + m) // 60) if int(h1 + (m1 + m) // 60) > 9 else '0' + str(int(h1 + (m1 + m) // 60)), end=':')
print(int((m1 + m) % 60) if int((m1 + m) % 60) > 9 else '0' + str(int((m1 + m) % 60)))


GI = lambda : int(input())
GIS = lambda : map(int, input().split())
LGIS = lambda : list(GIS())

def main():
	m1 = input()
	m2 = input()

	def stot(s):
		(h, m) = map(int, s.split(':'))
		return h * 60 + m
	m1t = stot(m1)
	m2t = stot(m2)
	mm = (m2t + m1t) / 2
	print('%02i:%02i' % divmod(mm, 60))
main()


import sys
read = lambda : list(map(int, sys.stdin.readline().strip().split()))
import bisect
s1 = input()
s2 = input()
h1 = int(s1[0:2])
m1 = int(s1[3:])
h2 = int(s2[0:2])
m2 = int(s2[3:])
h = (h2 + h1) // 2
m = (m2 + m1) // 2
if (h2 - h1) % 2 == 1:
	m += 30
if m >= 60:
	h += 1
	m -= 60
if h < 10:
	print('0{}'.format(h), end='')
else:
	print(h, end='')
print(':', end='')
if m < 10:
	print('0{}'.format(m))
else:
	print(m)


a = input()
b = input()
h1 = int(a[0] + a[1])
m1 = int(a[3] + a[4])
h2 = int(b[0] + b[1])
m2 = int(b[3] + b[4])
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
t3 = (t1 + t2) // 2
h3 = t3 // 60
m3 = t3 % 60
ans = ''
if h3 < 10:
	ans = ans + '0' + str(h3)
else:
	ans = ans + str(h3)
ans = ans + ':'
if m3 < 10:
	ans = ans + '0' + str(m3)
else:
	ans = ans + str(m3)
print(ans)


s = input()
e = input()
a1 = int(s[0:2])
a2 = int(s[3:5])
b1 = int(e[0:2])
b2 = int(e[3:5])
f = (b1 - a1 - 1) * 60
g = 60 - a2
h = b2 - 0
x = (f + g + h) // 2
if x + a2 < 60:
	if a1 <= 9:
		print(0, end='')
	print(a1, end='')
	print(':', end='')
	if a2 + x <= 9:
		print(0, end='')
	print(a2 + x)
else:
	z = (x + a2) // 60
	y = (x + a2) % 60
	if a1 + z <= 9:
		print(0, end='')
	print(a1 + z, end='')
	print(':', end='')
	if y <= 9:
		print(0, end='')
	print(y)


one = input()
two = input()
one = one.split(':')
two = two.split(':')
h1 = int(one[0])
m1 = int(one[1])
h2 = int(two[0])
m2 = int(two[1])
adding = ((h2 - h1) * 60 + m2 - m1) // 2
print('{:02d}:{:02d}'.format(h1 + (m1 + adding) // 60, (m1 + adding) % 60))


a = input().split(':')
b = input().split(':')
m = int(a[0]) * 30 + int(a[1]) / 2 + int(b[0]) * 30 + int(b[1]) / 2
g = str(int(m % 60))
if len(g) == 1:
	g = '0' + g
s = str(int(m // 60))
if len(s) == 1:
	s = '0' + s
print(s + ':' + g)


class CodeforcesTask1133ASolution:

	def __init__(self):
		self.result = ''
		self.h1 = []
		self.h2 = []

	def read_input(self):
		self.h1 = [int(x) for x in input().split(':')]
		self.h2 = [int(x) for x in input().split(':')]

	def process_task(self):
		h1 = self.h1[0] * 60 + self.h1[1]
		h2 = self.h2[0] * 60 + self.h2[1]
		mid = (h1 + h2) / 2
		h_mid = int(mid // 60)
		m_mid = int(mid % 60)
		self.result = '{:02d}:{:02d}'.format(h_mid, m_mid)

	def get_result(self):
		return self.result
Solution = CodeforcesTask1133ASolution()
Solution.read_input()
Solution.process_task()
print(Solution.get_result())


T1 = input()
T2 = input()
h1 = int(T1[:2])
m1 = int(T1[3:])
h2 = int(T2[:2])
m2 = int(T2[3:])
h = (h2 - h1) // 2
h3 = (h2 - h1) / 2
m = (m2 - m1) // 2
H = h1 + h
M = m1 + m
if M >= 60:
	M = M - 60
	H += 1
if h3 - h == 0:
	H = '0' + str(H)
	M = '0' + str(M)
	if len(H) == 3 and len(M) == 3:
		print(H[1:] + ':' + M[1:])
	elif len(H) == 3 and len(M) == 2:
		print(H[1:] + ':' + M)
	elif len(H) == 2 and len(M) == 3:
		print(H + ':' + M[1:])
	else:
		print(H + ':' + M)
else:
	if M + 30 >= 60:
		M = M - 30
		H += 1
	else:
		M += 30
	H = '0' + str(H)
	M = '0' + str(M)
	if len(H) == 3 and len(M) == 3:
		print(H[1:] + ':' + M[1:])
	elif len(H) == 3 and len(M) == 2:
		print(H[1:] + ':' + M)
	elif len(H) == 2 and len(M) == 3:
		print(H + ':' + M[1:])
	else:
		print(H + ':' + M)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
total1 = h1 * 60 + m1
total2 = h2 * 60 + m2
moy = (total1 + total2) // 2
h3 = moy // 60
m3 = moy % 60
if h3 < 10:
	h3 = '0' + str(h3)
if m3 < 10:
	m3 = '0' + str(m3)
print('{}:{}'.format(h3, m3))


def print_time(h, m):
	if len(str(h)) == 1:
		h = '0' + str(h)
	if len(str(m)) == 1:
		m = '0' + str(m)
	print(h, ':', m, sep='')
(s1, s2) = (input(), input())
(h1, h2, m1, m2) = (int(s1[:2]), int(s2[:2]), int(s1[3:]), int(s2[3:]))
if h1 > h2:
	(h1, h2) = (h2, h1)
	(m1, m2) = (m2, m1)
if h1 == h2:
	print_time(h1, (m1 + m2) // 2)
else:
	minute = 60 - m1 + m2 + (h2 - h1 - 1) * 60
	(mid, h, m) = (minute // 2, 0, 0)
	if mid >= 60 - m1:
		mid -= 60 - m1
		h = h1 + mid // 60 + 1
		m = mid % 60
	else:
		m += m1 + mid
		h = h1
	print_time(h, m)


start_time = input()
end_time = input()
(start_hour, start_minute) = list(map(int, start_time.split(':')))
(end_hour, end_minute) = list(map(int, end_time.split(':')))
start_minutes = start_hour * 60 + start_minute
end_minutes = end_hour * 60 + end_minute
mid_minutes = (start_minutes + end_minutes) // 2
print('{:02d}:{:02d}'.format(mid_minutes // 60, mid_minutes % 60))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if h2 < h1:
	h2 += 24
diff = abs(h1 * 60 + m1 - (h2 * 60 + m2)) / 2
diffH = int(diff / 60)
diffM = diff - diffH * 60
h3 = int(h1 + diffH)
m3 = int(m1 + diffM)
if m3 >= 60:
	diffm3 = int(m3 / 60)
	h3 += diffm3
	m3 %= 60
if h3 >= 24:
	h3 %= 24
a = str(h3).zfill(2) + ':' + str(m3).zfill(2)
print(a)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
start = 60 * h1 + m1
end = 60 * h2 + m2
minutes = (end - start) // 2
mid = start + minutes
hour = mid // 60
minutes = mid % 60
print('{:02d}:{:02d}'.format(hour, minutes))


s = [*map(int, input().split(':'))]
t = [*map(int, input().split(':'))]
if s[1] + t[1] >= 60:
	flag = 1
	d = (s[1] + t[1] - 60) // 2
else:
	d = (s[1] + t[1]) // 2
	flag = 0
h = s[0] + t[0] + flag
if h % 2 != 0:
	h //= 2
	d += 30
else:
	h //= 2
if len(str(h)) < 2:
	print('0' + str(h) + ':', end='')
else:
	print(str(h) + ':', end='')
if len(str(d)) < 2:
	print('0' + str(d), end='')
else:
	print(str(d), end='')


x = list(map(int, input('').split(':')))
y = list(map(int, input('').split(':')))
s = (x[1] + y[1]) / 2
if x[0] % 2 == y[0] % 2:
	q = int((x[0] + y[0]) / 2)
	s = int(s)
	q = int(q)
	if q < 10:
		q = '0' + str(q)
	if s < 10:
		s = '0' + str(s)
	print(str(q) + ':' + str(s))
else:
	q = int((x[0] + y[0]) / 2)
	s += 30
	if s >= 60:
		s = s - 60
		q += 1
	s = int(s)
	q = int(q)
	if q < 10:
		q = '0' + str(q)
	if s < 10:
		s = '0' + str(s)
	print(str(q) + ':' + str(s))


from datetime import *
(s_h, s_m) = map(int, input().split(':'))
(e_h, e_m) = map(int, input().split(':'))
delta = datetime.combine(date.today(), time(e_h, e_m)) - datetime.combine(date.today(), time(s_h, s_m))
delta_2 = timedelta(seconds=delta.seconds / 2)
t_half = datetime.combine(date.today(), time(s_h, s_m)) + delta_2
print('%02d:%02d' % (t_half.hour, t_half.minute))


s = input()
h1 = int(s[:2])
m1 = int(s[3:])
s = input()
h2 = int(s[:2])
m2 = int(s[3:])
m = (h2 - h1) * 60 + (m2 - m1)
m = m / 2
h = m // 60
h1 = (h1 + h) % 24
m = m % 60
if m + m1 >= 60:
	h1 = (h1 + (m + m1) // 60) % 24
	m = m - (60 - m1)
else:
	m = m1 + m
h1 = int(h1)
m = int(m)
if h1 < 10:
	h1 = '0' + str(h1)
if m < 10:
	m = '0' + str(m)
print('{}:{}'.format(h1, m))


beg = input()
end = input()
h1 = int(beg[0] + beg[1])
m1 = int(beg[3] + beg[4])
h2 = int(end[0] + end[1])
m2 = int(end[3] + end[4])
hr = h2 + h1
mi = m2 + m1
if mi >= 60:
	hr += 1
	mi -= 60
mi = mi // 2
if hr % 2 != 0:
	mi += 30
hr = hr // 2
if hr < 10:
	hr = '0' + str(hr)
if mi < 10:
	mi = '0' + str(mi)
print(str(hr) + ':' + str(mi))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
time = (h2 * 60 + m2 - h1 * 60 - m1) // 2
h1 += time // 60
m1 += time % 60
h1 = (h1 + m1 // 60) % 24
m1 %= 60
ans1 = str(h1)
if len(ans1) == 1:
	ans1 = '0' + ans1
ans2 = str(m1)
if len(ans2) == 1:
	ans2 = '0' + ans2
print(str(ans1) + ':' + str(ans2))


i = input()
h1 = int(i[:2])
m1 = int(i[3:5])
j = input()
h2 = int(j[:2])
m2 = int(j[3:5])
hr = h2 - h1
hr = hr * 60
m = m2 - m1
hr = hr + m
hr >>= 1
h1 = h1 + hr // 60
m1 = m1 + hr % 60
if m1 >= 60:
	h1 += 1
	m1 = m1 % 60
h1 = str(h1).zfill(2)
m1 = str(m1).zfill(2)
h1 = h1 + ':' + m1
print(h1)


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1)
h2 = int(h2)
m1 = int(m1)
m2 = int(m2)
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
tt = t1 + t2
tm = tt / 2
th = int(tm / 60)
tm = int(tm % 60)
if m1 % 2 == m2 % 2 and t2 > t1 and (t2 - t1 >= 2) and (23 >= h1 >= 0) and (0 <= h2 <= 23) and (m1 >= 0) and (m2 <= 59) and (0 <= th <= 23) and (0 <= tm <= 59):
	th = f'{th:02}'
	tm = f'{tm:02}'
	fuck = th + ':' + tm
	print(fuck)


def main():
	time1 = input().split(':')
	time2 = input().split(':')
	h1 = int(time1[0])
	m1 = int(time1[1])
	h2 = int(time2[0])
	m2 = int(time2[1])
	h1Min = 60 * h1 + m1
	h2Min = 60 * h2 + m2
	half = (h2Min - h1Min) // 2
	endTime = h1Min + half
	h3 = endTime // 60
	m3 = endTime % 60
	if h3 < 10 and m3 < 10:
		print('0{}:0{}'.format(h3, m3))
	elif h3 < 10:
		print('0{}:{}'.format(h3, m3))
	elif m3 < 10:
		print('{}:0{}'.format(h3, m3))
	else:
		print('{}:{}'.format(h3, m3))
main()


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
a = h1 * 60 + m1
b = h2 * 60 + m2
tot = (a + b) // 2
print('%02d:%02d' % (tot // 60, tot % 60))


t1 = input().split(':')
t2 = input().split(':')
for i in range(2):
	t1[i] = int(t1[i])
	t2[i] = int(t2[i])
if t2[0] - t1[0] > 0:
	total_mins = (t2[0] - t1[0]) * 60 + t2[1] - t1[1]
else:
	total_mins = t2[1] - t1[1]
if total_mins / 2 + t1[1] < 60:
	if t1[0] < 10:
		t1[0] = '0' + str(t1[0])
	if t1[1] + int(total_mins / 2) >= 10:
		print(str(t1[0]) + ':' + str(t1[1] + int(total_mins / 2)))
	else:
		print(str(t1[0]) + ':0' + str(t1[1] + int(total_mins / 2)))
else:
	x = str(int(t1[0] + (total_mins / 2 + t1[1]) // 60))
	if int(t1[0] + (total_mins / 2 + t1[1]) // 60) < 10:
		x = '0' + str(int(t1[0] + (total_mins / 2 + t1[1]) // 60))
	if (t1[1] + int(total_mins / 2)) % 60 >= 10:
		print(x + ':' + str((t1[1] + int(total_mins / 2)) % 60))
	else:
		print(x + ':0' + str((t1[1] + int(total_mins / 2)) % 60))


start = list(map(int, input().split(':')))
end = list(map(int, input().split(':')))
start_minutes = start[0] * 60 + start[1]
end_minutes = end[0] * 60 + end[1]
difference = (end_minutes - start_minutes) / 2
start_minutes += difference
hours = list(str(start_minutes // 60))
minutes = list(str(start_minutes % 60))
if len(''.join(hours).split('.')[0]) < 2:
	hours.insert(0, '0')
if len(''.join(minutes).split('.')[0]) < 2:
	minutes.insert(0, '0')
hours = hours[:2]
minutes = minutes[:2]
hours = ''.join(hours)
minutes = ''.join(minutes)
print('{}:{}'.format(hours, minutes))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if 0 <= m1 <= 59 and 0 <= m2 <= 59:
	if h1 == h2 and 0 <= h1 < 24 and (0 <= h2 < 24):
		minutes = (m1 + m2) / 2
		h3 = str(h1)
		m3 = str(round(minutes))
		if len(h3) == 1:
			h3 = '0' + h3
		if len(m3) == 1:
			m3 = '0' + m3
		print(h3 + ':' + m3)
	if m1 == m2:
		if h1 % 2 != 0 and h2 % 2 != 0 and (0 < h1 < 24) and (0 < h2 < 24):
			time = (h1 + h2) / 2
			h3 = str(round(time))
			m3 = str(m1)
			if len(h3) == 1:
				h3 = '0' + h3
			if len(m3) == 1:
				m3 = '0' + m3
			print(h3 + ':' + m3)
		if h1 % 2 == 0 and h2 % 2 == 0:
			time = (h1 + h2) / 2
			time = (h1 + h2) / 2
			h3 = str(round(time))
			m3 = str(m1)
			if len(h3) == 1:
				h3 = '0' + h3
			if len(m3) == 1:
				m3 = '0' + m3
			print(h3 + ':' + m3)
		if h1 % 2 != 0 and h2 % 2 == 0:
			min1 = h1 * 60 + m1
			min2 = h2 * 60 + m2
			diff = min2 - min1
			mid = diff / 2
			final = mid + min1
			time = final / 60
			(i, d) = divmod(time, 1)
			minutes = round(d * 60)
			h3 = str(round(i))
			m3 = str(minutes)
			if len(h3) == 1:
				h3 = '0' + h3
			if len(m3) == 1:
				m3 = '0' + m3
			print(h3 + ':' + m3)
		if h1 % 2 == 0 and h2 % 2 != 0:
			min1 = h1 * 60 + m1
			min2 = h2 * 60 + m2
			diff = min2 - min1
			mid = diff / 2
			final = mid + min1
			time = final / 60
			(i, d) = divmod(time, 1)
			minutes = round(d * 60)
			h3 = str(round(i))
			m3 = str(minutes)
			if len(h3) == 1:
				h3 = '0' + h3
			if len(m3) == 1:
				m3 = '0' + m3
			print(h3 + ':' + m3)
	if h1 != h2 and m1 != m2 and (0 <= h1 < 24) and (0 <= h2 < 24):
		min1 = h1 * 60 + m1
		min2 = h2 * 60 + m2
		diff = min2 - min1
		mid = diff / 2
		final = mid + min1
		time = final / 60
		(i, d) = divmod(time, 1)
		minutes = round(d * 60)
		h3 = str(round(i))
		m3 = str(minutes)
		if len(h3) == 1:
			h3 = '0' + h3
		if len(m3) == 1:
			m3 = '0' + m3
		print(h3 + ':' + m3)


(t1m, t1s) = [int(j) for j in input().split(':')]
(t2m, t2s) = [int(j) for j in input().split(':')]
s = 60 * (t2m - t1m) + t2s - t1s
s = s // 2
s += t1m * 60 + t1s
h = s // 60
m = s % 60
h1 = ''
m1 = ''
if len(str(h)) == 1:
	h1 = '0' + str(h)
else:
	h1 = str(h)
if len(str(m)) == 1:
	m1 = '0' + str(m)
else:
	m1 = str(m)
print(h1 + ':' + m1)


a = input()
b = input()
h1 = int(a[:2])
m1 = int(a[3:])
h2 = int(b[:2])
m2 = int(b[3:])
k = (h2 - h1) * 60
l = m2 - m1
j = k + l
j = j / 2
o = m1 + j
while o > 59:
	o = o - 60
	h1 = h1 + 1
h1 = str(h1)
o = str(int(o))
if len(h1) == 1:
	h1 = '0' + h1
if len(o) == 1:
	o = '0' + o
print(str(h1) + ':' + str(o))


from datetime import datetime
from datetime import timedelta
a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
c = []
d = []
t2 = timedelta(hours=b[0], minutes=b[1])
t1 = timedelta(hours=a[0], minutes=a[1])
c = t1 + (t2 - t1) / 2
c = str(c)
c = list(c)
if c[1] == ':':
	print('0' + c[0] + c[1] + c[2] + c[3])
else:
	print(c[0] + c[1] + c[2] + c[3] + c[4])


a = list(map(str, input().strip().split()))
b = list(map(str, input().strip().split()))
m = a[0][0:2]
n = a[0][3:5]
q = b[0][0:2]
p = b[0][3:5]
c = []
e = int(m) * 60 + int(n)
z = int(q) * 60 + int(p)
t = (e + z) / 2
c.append(int(t / 60))
c.append(':')
c.append(int(t % 60))
if 0 <= c[0] < 10:
	c[0] = '0' + str(c[0])
if 0 <= c[2] < 10:
	c[2] = '0' + str(c[2])
for item in c:
	print(item, end='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if h2 < h1 or (h2 == h1 and m2 < m1):
	dh = 24 - h1 + h2
else:
	dh = h2 - h1
dm = m2 - m1
if dh % 2 == 1:
	dm += 60
	dh -= 1
m1 += dm // 2
h1 += dh // 2
h1 += m1 // 60
m1 %= 60
h1 %= 24

def pr(v):
	if v < 10:
		print('0' + str(v), end='')
	else:
		print(v, end='')
pr(h1)
print(':', end='')
pr(m1)


z = lambda : map(int, input().split(':'))
(a, b) = z()
(c, d) = z()
k = (a * 60 + c * 60 + b + d) // 2
print(f'{k // 60:02}:{k % 60:02}')


from datetime import datetime
start = input()
end = input()
d1 = datetime.strptime(start, '%H:%M')
d2 = datetime.strptime(end, '%H:%M')
k = d1 + (d2 - d1) / 2
print(k.strftime('%H:%M'))


(x, y) = map(int, input().split(':'))
(a, b) = map(int, input().split(':'))
h3 = x + a
h4 = h3 // 2
h5 = y + b
h6 = (h5 + h3 % 2 * 60) // 2
if h6 >= 60:
	h6 -= 60
	h4 += 1
if h4 < 10:
	print('0' + str(h4), end='')
else:
	print(str(h4), end='')
print(':', end='')
if h6 < 10:
	print('0' + str(h6), end='')
else:
	print(str(h6))


(a, b) = [input() for x in range(2)]
a = a.split(':')
b = b.split(':')
if a[0] > b[0]:
	b[0] += 24
if a[0] == b[0] and a[1] > b[1]:
	b[0] += 24
am = int(a[0]) * 60 + int(a[1])
bm = int(b[0]) * 60 + int(b[1])
cm = (am + bm) / 2
c = [int(cm // 60), int(cm % 60)]
print('{:0>2}'.format(c[0] % 24), '{:0>2}'.format(c[1]), sep=':')


(a1, a2) = map(int, input().split(':'))
(b1, b2) = map(int, input().split(':'))
d = (b1 * 60 + b2 - (a1 * 60 + a2)) // 2
f = a1 * 60 + a2 + d
h = f // 60
m = f % 60
if h <= 9:
	h = '0' + str(h)
else:
	h = str(h)
if m <= 9:
	m = '0' + str(m)
else:
	m = str(m)
print(h + ':' + m)


def main():
	(a, b) = map(int, input().split(':'))
	(c, d) = map(int, input().split(':'))
	(x, y) = (a * 60 + b, c * 60 + d)
	for h in range(24):
		for m in range(60):
			r = 60 * h + m
			if r - x == y - r and y >= r >= x:
				if len(str(h)) == 1:
					print('0{}:'.format(h), end='')
				else:
					print('{}:'.format(h), end='')
				if len(str(m)) == 1:
					print('0{}'.format(m))
				else:
					print('{}'.format(m))
				break
main()


(sh, sm) = map(int, input().split(':'))
(eh, em) = map(int, input().split(':'))
c = (sh * 60 + sm + eh * 60 + em) // 2
print(c // 60 // 10, c // 60 % 10, ':', c % 60 // 10, c % 60 % 10, sep='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
l = lambda x: f'0{int(x)}' if x < 10 else str(int(x))
print(f'{l(((h1 + h2) * 60 + m1 + m2) / 2 // 60)}:{l(((h1 + h2) * 60 + m1 + m2) / 2 % 60)}')


import sys
from datetime import datetime, timedelta
data = input()
t1 = data.split(':')
data = input()
t2 = data.split(':')
time1 = datetime(1994, 11, 25, int(t1[0]), int(t1[1]), 0)
time2 = datetime(1994, 11, 25, int(t2[0]), int(t2[1]), 0)
if time1 < time2:
	delta = time2 - time1
else:
	delta = time1 - time2
delta /= 2
if time1 < time2:
	time1 = time1 + timedelta(seconds=delta.seconds)
	t1tuple = time1.timetuple()
	if len(str(t1tuple.tm_hour)) == 1:
		sys.stdout.write('0')
	sys.stdout.write(str(t1tuple.tm_hour) + ':')
	if len(str(t1tuple.tm_min)) == 1:
		sys.stdout.write('0')
	sys.stdout.write(str(t1tuple.tm_min))
else:
	time2 = time2 + timedelta(seconds=delta.seconds)
	t1tuple = time2.timetuple()
	if len(str(t1tuple.tm_hour)) == 1:
		sys.stdout.write('0')
	sys.stdout.write(str(t1tuple.tm_hour) + ':')
	if len(str(t1tuple.tm_min)) == 1:
		sys.stdout.write('0')
	sys.stdout.write(str(t1tuple.tm_min))


def to_min(s):
	(h, m) = map(int, s.split(':'))
	return 60 * h + m

def to_str(n):
	s = str(n)
	while len(s) < 2:
		s = '0' + s
	return s
s = to_min(input())
f = to_min(input())
delta = f - s
mid = s + delta // 2
print(to_str(mid // 60) + ':' + to_str(mid % 60))


def main():
	(a, b) = list(map(int, input().split(':')))
	(c, d) = list(map(int, input().split(':')))
	if a == c:
		x = (b + d) // 2
		if a // 10 == 0:
			a = str(a)
			a = '0' + a
		if x // 10 == 0:
			x = str(x)
			x = '0' + x
		print(a, x, sep=':')
	else:
		x = a * 60 + b
		y = c * 60 + d
		z = (x + y) // 2
		s = z // 60
		r = z % 60
		if s // 10 == 0:
			s = str(s)
			s = '0' + s
		if r // 10 == 0:
			r = str(r)
			r = '0' + r
		print(s, r, sep=':')
main()


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
if d >= b:
	dif = d - b + (c - a) * 60
else:
	dif = 60 - b + d + (c - a - 1) * 60
dif = dif // 2
s = a * 60 + b
s += dif
if len(str(s // 60)) == 1:
	print(str(0) + str(s // 60), end='')
else:
	print(str(s // 60), end='')
print(':', end='')
if len(str(s % 60)) == 1:
	print(str(0) + str(s % 60), end='')
else:
	print(str(s % 60), end='')


l = input()
m = input()
a = int(l[0] + l[1])
b = int(l[3] + l[4])
c = int(m[0] + m[1])
d = int(m[3] + m[4])
e = d - b
f = (c - a) * 60 + e
h = f // 2
g = h // 60
t = 0
y = h - g * 60
t = (b + y) // 60
if a + g + t < 10:
	a = str(0) + str(a + g + t)
else:
	a = str(a + g + t)
p = (b + y) % 60
if p < 10:
	b = str(0) + str(p)
else:
	b = str(p)
print(a + ':' + b)


import math
import time
from collections import defaultdict, deque
from sys import stdin, stdout
from bisect import bisect_left, bisect_right
(h1, m1) = map(int, stdin.readline().split(':'))
(h2, m2) = map(int, stdin.readline().split(':'))
total = 0
total += (h2 - h1) * 60
total += m2 - m1
toadd = total // 2
h1 += toadd // 60
m1 += toadd % 60
if m1 >= 60:
	m1 = m1 % 60
	h1 += 1
m1 = str(m1)
h1 = str(h1)
if len(m1) < 2:
	m1 = '0' + m1
if len(h1) < 2:
	h1 = '0' + h1
print(h1, m1, sep=':')


(s, t) = map(int, input().split(':'))
(x, y) = map(int, input().split(':'))
xx = (x + s) * 60 + (t + y)
xx //= 2
print('0' * (2 - len(str(xx // 60))) + str(xx // 60) + ':' + '0' * (2 - len(str(xx % 60))) + str(xx % 60))


s1 = list(map(int, input().split(':')))
s2 = list(map(int, input().split(':')))
hours = s1[0] + s2[0]
minutes = s1[1] + s2[1]
if hours % 2 == 1:
	minutes += 60
if minutes > 118:
	minutes -= 120
	hours += 1
h = str(hours // 2)
m = str(minutes // 2)
ans = '0' * (2 - len(h)) + h + ':' + '0' * (2 - len(m)) + m
print(ans)


(x1, y1) = list(map(int, input().split(':')))
(x2, y2) = list(map(int, input().split(':')))
m = 30 * (x1 + x2) + (y1 + y2) // 2
x = str(m // 60)
y = str(m % 60)
if len(x) == 1:
	x = '0' + x
if len(y) == 1:
	y = '0' + y
print(x + ':' + y)


t1 = list(map(int, input().split(':')))
t2 = list(map(int, input().split(':')))
t1 = t1[0] * 60 + t1[1]
t2 = t2[0] * 60 + t2[1]
print('{:02d}:{:02d}'.format((t1 + t2) // 2 // 60, (t1 + t2) // 2 % 60))


(s1, e1) = map(int, input().split(':'))
(s2, e2) = map(int, input().split(':'))
if s1 == s2:
	h = str(s1)
	m = str((e1 + e2) // 2)
else:
	t = (60 - e1 + e2 + 60 * (s2 - s1 - 1)) // 2 + e1
	h = str(s1 + t // 60)
	m = str(t % 60)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(h, m, sep=':')


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1)
h2 = int(h2)
m1 = int(m1)
m2 = int(m2)
c = h1 * 60 + m1
d = h2 * 60 + m2
e = (c + d) // 2
f = e // 60
g = e % 60
print('%02d:%02d' % (f, g))


t1 = input()
t2 = input()
(h1, m1) = map(int, t1.split(':'))
(h2, m2) = map(int, t2.split(':'))
result = h2 * 60 + m2 - (h1 * 60 + m1)
result = int(result / 2)
mh = int(result / 60)
mm = int(result % 60)
minutes = mh * 60 + mm + (h1 * 60 + m1)
t = '{:02d}:{:02d}'.format(*divmod(minutes, 60))
print(t)


import sys
inf = float('inf')
mod = 1000000007

def get_array():
	return list(map(int, sys.stdin.readline().split()))

def get_ints():
	return map(int, sys.stdin.readline().split())

def input():
	return sys.stdin.readline()

def main():
	x = input().strip()
	y = input().strip()
	(h1, m1) = (int(x[:2]), int(x[3:]))
	(h2, m2) = (int(y[:2]), int(y[3:]))
	x1 = h1 * 60 + m1
	x2 = h2 * 60 + m2
	u = (x1 + x2) // 2
	h = u // 60
	m = u - h * 60
	if h < 10:
		h = '0' + str(h)
	if m < 10:
		m = '0' + str(m)
	print(h, ':', m, sep='')
main()


S1 = input()
S2 = input()
x1 = int(S1[:2]) * 60 + int(S1[-2:])
x2 = int(S2[:2]) * 60 + int(S2[-2:])
x = (x1 + x2) // 2
H = x // 60
M = x % 60
if H < 10:
	H = '0' + str(H)
if M < 10:
	M = '0' + str(M)
print(str(H) + ':' + str(M))


a = [int(s) for s in input().split(':')]
b = [int(s) for s in input().split(':')]
h1 = a[0] * 60
m1 = a[1]
h2 = b[0] * 60
m2 = b[1]
t = (h2 + m2 - (h1 + m1)) // 2
t = t + h1 + m1
h3 = t // 60
if h3 < 10:
	h3 = '0' + str(h3)
m3 = t % 60
if m3 < 10:
	m3 = '0' + str(m3)
print(h3, m3, sep=':')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
mdiff = (h2 - h1) * 60 + (m2 - m1)
mmean = (m1 + mdiff // 2) % 60
hmean = h1 + (m1 + mdiff // 2) // 60
print('%02d:%02d' % (hmean, mmean))


n1 = input()
n2 = input()
n1 = list(n1)
n2 = list(n2)
h1 = n1[0:2]
h2 = n2[0:2]
m1 = n1[3:len(n1)]
m2 = n2[3:len(n2)]
h1 = int(''.join(map(str, h1)))
m1 = int(''.join(map(str, m1)))
h2 = int(''.join(map(str, h2)))
m2 = int(''.join(map(str, m2)))
if h1 == h2:
	vr = m2 - m1
if h2 - h1 == 1:
	vr = m2 + 60 - m1
if h2 - h1 > 1:
	vr = (h2 - h1 - 1) * 60 + m2 + 60 - m1
vr = vr // 2
h1 += vr // 60
m1 += vr % 60
if m1 >= 60:
	h1 += 1
	m1 = m1 % 60
ans = [h1, ':', m1]
if h1 < 10:
	ans.insert(0, 0)
if m1 < 10:
	ans.insert(-1, 0)
for i in range(len(ans)):
	print(ans[i], end='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
mid = (t1 + t2) // 2
print(str(mid // 60).zfill(2) + ':' + str(mid % 60).zfill(2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t = (h1 * 60 + h2 * 60 + m1 + m2) // 2
print(str(t // 60).rjust(2, '0'), str(t % 60).rjust(2, '0'), sep=':')


start = input()
start = start.split(':')
start_h = int(start[0])
start_m = int(start[1])
finish = input()
finish = finish.split(':')
finish_h = int(finish[0])
finish_m = int(finish[1])
start_time = start_h * 60 + start_m
finish_time = finish_h * 60 + finish_m
mid_t = (start_time + finish_time) / 2
mid_h = int(mid_t / 60)
mid_m = int(mid_t % 60)
if int(mid_h / 10) == 0:
	mid_h = str(mid_h)
	mid_h += mid_h
	mid_h = '0' + mid_h[1]
if int(mid_m / 10) == 0:
	mid_m = str(mid_m)
	mid_m += mid_m
	mid_m = '0' + mid_m[1]
print(mid_h, mid_m, sep=':')


a = input()
b = input()
h1 = int(a[0:2])
m1 = int(a[3:5])
h2 = int(b[0:2])
m2 = int(b[3:5])
mindiff = 0
if m2 < m1:
	mindiff = 60 - m1 + m2
	hourdiff = -1
else:
	mindiff = m2 - m1
	hourdiff = 0
hourdiff = h2 - h1 + hourdiff
totalmin = mindiff + 60 * hourdiff
finalmin = (m1 + totalmin // 2) % 60
finalhour = (h1 + (m1 + totalmin // 2) // 60 % 24) % 24
if finalhour <= 9:
	if finalmin <= 9:
		print(str(0) + str(finalhour) + ':' + str(0) + str(finalmin))
	else:
		print(str(0) + str(finalhour) + ':' + str(finalmin))
elif finalmin <= 9:
	print(str(finalhour) + ':' + str(0) + str(finalmin))
else:
	print(str(finalhour) + ':' + str(finalmin))


a = input()
b = input()
(a1, a2) = (int(a[:2]), int(a[3:]))
(b1, b2) = (int(b[:2]), int(b[3:]))
c = (a1 * 60 + a2 + b1 * 60 + b2) / 2
c1 = c // 60
c2 = c % 60
if c1 < 10:
	c1 = '0' + str(int(c1))
else:
	c1 = str(int(c1))
if c2 < 10:
	c2 = '0' + str(int(c2))
else:
	c2 = str(int(c2))
print(c1 + ':' + c2)


A = list(map(int, input().split(':')))
B = list(map(int, input().split(':')))
m = 0
if A[0] == B[0]:
	m = B[1] - A[1]
else:
	m += 60 - A[1] + B[1]
	m += 60 * (B[0] - A[0] - 1)
m = m // 2
a = A[0]
b = A[1]
if m >= 60 - b:
	m -= 60 - b
	b = 0
	a += 1
	a += m // 60
	m = m % 60
	if a < 10 and m < 10:
		s = '0' + str(a) + ':0' + str(m)
	elif a < 10:
		s = '0' + str(a) + ':' + str(m)
	elif m < 10:
		s = str(a) + ':0' + str(m)
	else:
		s = str(a) + ':' + str(m)
	print(s)
else:
	if a < 10 and b + m < 10:
		s = '0' + str(a) + ':0' + str(b + m)
	elif a < 10:
		s = '0' + str(a) + ':' + str(b + m)
	elif b + m < 10:
		s = str(a) + ':0' + str(b + m)
	else:
		s = str(a) + ':' + str(b + m)
	print(s)


s = input()
h1 = int(s[:2])
m1 = int(s[3:])
s = input()
h2 = int(s[:2])
m2 = int(s[3:])
d = h2 - h1
a = (m1 + m2 + d * 60) // 2
div = a // 60
rem = a % 60
h1 += div
if h1 < 10:
	print('0', end='')
	print(h1, end='')
	print(':', end='')
else:
	print(h1, end='')
	print(':', end='')
if rem < 10:
	print('0', end='')
	print(rem)
else:
	print(rem)


def ii():
	return int(input())

def mi():
	return map(int, input().split(':'))

def li():
	return list(mi())
(hh1, mm1) = mi()
(hh2, mm2) = mi()
if hh2 == 0 and mm2 == 0:
	hh2 = 24
mm = mm1 + mm2
hh = hh1 + hh2
if hh % 2 == 1:
	mm += 60
if mm >= 120:
	mm = mm % 120
	hh += 1
hh = str(int(hh // 2))
mm = str(int(mm // 2))
if len(hh) == 1:
	hh = '0' + hh
if len(mm) == 1:
	mm = '0' + mm
ans = hh + ':' + mm
print(ans)


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
a1 = a[0] * 60 + a[1]
b1 = b[0] * 60 + b[1]
m = (a1 + b1) // 2
print(str(m // 60).rjust(2, '0') + ':' + str(m % 60).rjust(2, '0'))


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
m = 60 - a[1] + b[1]
h = b[0] - a[0] - 1
m = (h * 60 + m) // 2
h = m // 60
m = m % 60
a[0] = a[0] + h
if a[1] + m < 60:
	a[1] = a[1] + m
else:
	a[0] = a[0] + 1
	a[1] = (a[1] + m) % 60
if a[0] < 10 and a[1] < 10:
	print('0' + str(a[0]) + ':' + '0' + str(a[1]))
elif a[0] < 10:
	print('0' + str(a[0]) + ':' + str(a[1]))
elif a[1] < 10:
	print(str(a[0]) + ':' + '0' + str(a[1]))
else:
	print(str(a[0]) + ':' + str(a[1]))


(begin1, end1) = map(int, input().split(':'))
(begin2, end2) = map(int, input().split(':'))
begin = begin1 * 60 + end1
end = begin2 * 60 + end2
d = int((begin + end) / 2)
hours = str(int(d / 60)) if int(d / 60) >= 10 else '0' + str(int(d / 60))
mins = str(d % 60) if int(str(d % 60)) >= 10 else '0' + str(d % 60)
print(hours + ':' + mins)


a = input()
b = input()
a = a.split(':')
b = b.split(':')
for i in range(2):
	a[i] = int(a[i])
	b[i] = int(b[i])
h1 = a[0]
m1 = a[1]
h2 = b[0]
m2 = b[1]
t = (h1 * 60 + m1 + h2 * 60 + m2) // 2
h = t // 60
m = t % 60
if h < 10:
	h = '0' + str(h)
else:
	h = str(h)
if m < 10:
	m = '0' + str(m)
else:
	m = str(m)
t = h + ':' + m
print(t)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
t1 += (t2 - t1) / 2
print('{:02d}:{:02d}'.format(int(t1 // 60), int(t1 % 60)))


l = [int(i) for i in input().split(':')]
l1 = [int(i) for i in input().split(':')]
a = ((l[0] + l1[0]) * 60 + l[1] + l1[1]) // 2
if a // 60 < 10:
	h = '0' + str(a // 60)
else:
	h = a // 60
if a % 60 < 10:
	m = '0' + str(a % 60)
else:
	m = a % 60
print(h, end=':')
print(m)


import sys

def main():
	t1 = sys.stdin.readline()
	t2 = sys.stdin.readline()
	(h1, m1) = map(int, t1.strip().split(':'))
	(h2, m2) = map(int, t2.strip().split(':'))
	ans = (h2 * 60 + m2 + (h1 * 60 + m1)) // 2
	print('{:02d}:{:02d}'.format(ans // 60, ans % 60))
main()


m = input()
n = input()
x = (int(m[0:2]) * 60 + int(m[3:]) + int(n[0:2]) * 60 + int(n[3:])) // 2
x1 = x // 60
x2 = x % 60
if x1 < 10 and x2 < 10:
	print('0' + str(x1) + ':' + '0' + str(x2))
elif x1 < 10:
	print('0' + str(x1) + ':' + str(x2))
elif x2 < 10:
	print(str(x1) + ':' + '0' + str(x2))
else:
	print(str(x1) + ':' + str(x2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))

def normalize(h, m):
	return h * 60 + m
start = normalize(h2, m2)
end = normalize(h1, m1)
mid = (start + end) // 2
print('%02d:%02d' % (mid // 60, mid % 60))


(h1, m1) = map(int, input().rstrip().split(':'))
(h2, m2) = map(int, input().rstrip().split(':'))
tm1 = h1 * 60 + m1
tm2 = h2 * 60 + m2
tm3 = (tm1 + tm2) // 2
h3 = tm3 // 60
m3 = tm3 % 60
if h3 <= 9:
	h3 = '0' + str(h3)
if m3 <= 9:
	m3 = '0' + str(m3)
print(h3, ':', m3, sep='')


s = input()
h1 = int(s[:2])
m1 = int(s[3:])
s = input()
h2 = int(s[:2])
m2 = int(s[3:])
m = m2 - m1 + (h2 - h1) * 60
ma = (m1 + m / 2) % 60
ha = h1 + (m1 + m / 2) / 60
print('0' * (2 - len(str(int(ha)))) + str(int(ha)) + ':' + '0' * (2 - len(str(int(ma)))) + str(int(ma)))


start = input().split(':')
end = input().split(':')
endtime = int(end[0]) * 60 + int(end[1])
starttime = int(start[0]) * 60 + int(start[1])
midtime = (endtime - starttime) // 2
hour = str(int(start[0]) + int(midtime // 60))
minute = str(int(start[1]) + int(midtime % 60))
if int(minute) >= 60:
	hour = str(int(hour) + int(minute) // 60)
	minute = str(int(minute) % 60)
if len(hour) == 1:
	hour = '0' + hour
if len(minute) == 1:
	minute = '0' + minute
print(hour + ':' + minute)


f = list(map(int, input().split(':')))
s = list(map(int, input().split(':')))
a = f[0] * 60 + f[1]
b = s[0] * 60 + s[1]
n = (a + b) // 2
print('%02d:%02d' % (n // 60, n % 60))


(h1, m1) = (int(i) for i in input().split(':'))
(h2, m2) = (int(i) for i in input().split(':'))
hdiff = h2 - h1
mdiff = m2 - m1
totaldiff = hdiff * 60 + mdiff
totaldiff = int(totaldiff / 2) + (h1 * 60 + m1)
hr = str(int(totaldiff / 60))
mi = str(totaldiff % 60)
if len(hr) == 1:
	hr = '0' + hr
if len(mi) == 1:
	mi = '0' + mi
print(hr + ':' + mi)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
h3 = (h2 - h1) // 2 + h1
m3 = (m2 - m1) // 2 + m1
if (h2 - h1) % 2 == 1:
	m3 += 30
if m3 > 59:
	h3 += 1
	m3 -= 60
h3 = str(h3)
m3 = str(m3)
if len(h3) == 1:
	h3 = '0' + h3
if len(m3) == 1:
	m3 = '0' + m3
print(h3, ':', m3, sep='')


(a1, b1) = map(int, input().split(':'))
(a2, b2) = map(int, input().split(':'))
sq = a1 * 60 + b1
sm = (-a1 * 60 - b1 + a2 * 60 + b2) // 2
if (sq + sm) // 60 // 10 == 0:
	print(0, (sq + sm) // 60, sep='', end=':')
else:
	print((sq + sm) // 60, end=':')
if (sq + sm) % 60 // 10 == 0:
	print(0, (sq + sm) % 60, sep='')
else:
	print((sq + sm) % 60)


I = lambda : map(int, input().split(':'))
(h1, m1) = I()
(h2, m2) = I()
(h1, m1) = divmod(30 * (h1 + h2) + (m1 + m2) // 2, 60)
print(f'{h1:02}:{m1:02}')


start = str(input())
end = str(input())
(sh, sm) = (int(start.split(':')[0]), int(start.split(':')[1]))
(eh, em) = (int(end.split(':')[0]), int(end.split(':')[1]))
mins = sh * 60 + int(((eh - sh) * 60 + (em - sm)) / 2) + sm
(ah, am) = (int(mins / 60), mins % 60)
if ah > 9:
	sah = str(ah)
else:
	sah = '0' + str(ah)
if am > 9:
	sam = str(am)
else:
	sam = '0' + str(am)
print(sah + ':' + sam)


import math
import os
import random
import re
import sys
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if h1 == h2:
	m = (m2 + m1) // 2
	print(str(h1).zfill(2) + ':' + str(m).zfill(2))
else:
	m = (((h2 - h1) * 60 + m2 - m1) // 2 + m1) % 60
	h = h1 + (((h2 - h1) * 60 + m2 - m1) // 2 + m1) // 60
	print(str(h).zfill(2) + ':' + str(m).zfill(2))


from datetime import datetime

def half_time(start_time, end_time):
	fmt = '%H:%M'
	delta = datetime.strptime(end_time, fmt) - datetime.strptime(start_time, fmt)
	half = datetime.strptime(start_time, fmt) + delta // 2
	return str(datetime.time(half))[0:5]
a = input()
b = input()
print(half_time(a, b))


a = input().split(':')
b = input().split(':')
h1 = int(a[0])
m1 = int(a[1])
h2 = int(b[0])
m2 = int(b[1])
total_time = ((h1 + h2) * 60 + m1 + m2) / 2
h3 = total_time // 60
m3 = total_time % 60
if h3 < 10:
	h3 = '0' + str(int(h3))
else:
	h3 = str(int(h3))
if m3 < 10:
	m3 = '0' + str(int(m3))
else:
	m3 = str(int(m3))
print(h3 + ':' + m3)


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
s = ((a + c) * 60 + b + d) // 2
print('{:0>2d}:{:0>2d}'.format(s // 60, s % 60))


start = input().split(':')
end = input().split(':')
start_min = int(start[0]) * 60 + int(start[1])
end_min = int(end[0]) * 60 + int(end[1])
diff = (end_min - start_min) // 2
print('{:0>2}'.format(str((start_min + diff) // 60)) + ':' + '{:0>2}'.format(str((start_min + diff) % 60)))


s = [int(x) for x in input().split(':')]
e = [int(x) for x in input().split(':')]
s = 60 * s[0] + s[1]
e = 60 * e[0] + e[1]
mid = (e + s) // 2
h = str(mid // 60)
h = '0' * (2 - len(h)) + h
m = str(mid % 60)
m = '0' * (2 - len(m)) + m
print(h + ':' + m)


(starth, startm) = input().split(':')
(endh, endm) = input().split(':')
starth = int(starth)
startm = int(startm)
endh = int(endh)
endm = int(endm)
dh = endh - starth
dm = endm - startm
d = dm + 60 * dh
md = d / 2
midh = int(starth + md / 60)
midm = int(startm + md % 60)
if midm >= 60:
	midh += 1
	midm -= 60
if midh < 10:
	midh = '0' + str(midh)
else:
	midh = str(midh)
if midm < 10:
	midm = '0' + str(midm)
else:
	midm = str(midm)
print(midh + ':' + midm)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
dur = (h2 - h1) * 60 + m2 - m1
dur //= 2
time = h1 * 60 + dur + m1
h = str(time // 60)
m = str(time % 60)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


import sys
import math
get_string = lambda : sys.stdin.readline().strip()
get_int_list = lambda : list(map(int, sys.stdin.readline().strip().split()))
get_intList_from_str = lambda : list(map(int, list(sys.stdin.readline().strip())))
get_charList_from_str = lambda : list(sys.stdin.readline().strip())
get_char_list = lambda : sys.stdin.readline().strip().split()
get_int = lambda : int(sys.stdin.readline())
pt = lambda x: sys.stdout.write(str(x))
a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
s = (a[0] * 60 + b[0] * 60 + a[1] + b[1]) // 2
hour = str(s // 60)
if len(hour) == 1:
	hour = '0' + hour
minu = str(s % 60)
if len(minu) == 1:
	minu = '0' + minu
print(hour + ':' + minu)


l = list(input())
m = list(input())
a = (int(m[0]) * 10 + int(m[1]) + int(l[0]) * 10 + int(l[1])) * 60 + int(m[3]) * 10 + int(m[4]) + int(l[3]) * 10 + int(l[4])
a = a // 2
b = a // 60
a = a % 60
if b // 10 == 0:
	print(0, end='')
print(b, end='')
print(':', end='')
if a // 10 == 0:
	print(0, end='')
print(a)


s1 = input()
h1 = int(s1[0:2])
m1 = int(s1[3:5])
s2 = input()
h2 = int(s2[0:2])
m2 = int(s2[3:5])
h_diff = h2 - h1
m_diff = m2 - m1
m_diff = 60 * h2 + m2 - (60 * h1 + m1)
m_diff /= 2
m_diff = int(m_diff)
h_diff = 0
m3 = m1 + m_diff
h3 = h1
while m3 >= 60:
	m3 -= 60
	h3 += 1
print('{:02d}'.format(h3) + ':' + '{:02d}'.format(m3))


a = input()
b = input()
h1 = int(a[0:2])
m1 = int(a[3:])
h2 = int(b[0:2])
m2 = int(b[3:])
h1 = h1 * 60 + m1
h2 = h2 * 60 + m2
h = (h1 + h2) // 2
h1 = h // 60
m1 = h - h1 * 60
print('0' * (2 - len(str(h1))) + str(h1) + ':' + '0' * (2 - len(str(m1))) + str(m1))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
total_time = abs(h1 * 60 + m1 - (h2 * 60 + m2))
time_new = total_time // 2
m3 = time_new % 60
h3 = time_new // 60
new1 = (h3 + h1) * 60 + (m3 + m1)
m3 = new1 % 60
h3 = new1 // 60
print('{:02}:{:02}'.format(h3, m3))


a = input()
b = input()
if a[2] == ':':
	c = a[0] + a[1]
	c = int(c)
	d = int(a[3:])
else:
	c = int(a[0])
	d = int(a[2:])
if b[2] == ':':
	e = b[0] + b[1]
	e = int(e)
	f = int(b[3:])
else:
	e = int(b[0])
	f = int(b[2:])
tot = 60 * (c + e) + d + f
tot = tot / 2
h = str(int(tot // 60))
m = str(int(tot % 60))
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(str(h) + ':' + str(m))


a = [int(i) for i in input().split(':')]
b = [int(i) for i in input().split(':')]
(a, b) = (a[0] * 60 + a[1], b[0] * 60 + b[1])
a = (a + b) // 2
if a // 60 < 10:
	b = '0%d' % (a // 60)
else:
	b = a // 60
if a % 60 < 10:
	c = '0%d' % (a % 60)
else:
	c = a % 60
print('%s:%s' % (b, c))


import sys
import math
from functools import reduce
import bisect

def getN():
	return int(input())

def getNM():
	return map(int, input().split())

def getList():
	return list(map(int, input().split()))

def input():
	return sys.stdin.readline().rstrip()

def index(a, x):
	i = bisect.bisect_left(a, x)
	if i != len(a) and a[i] == x:
		return i
	return -1
c1 = input()
c2 = input()
h1 = int(c1[:2]) if c1[0] != '0' else int(c1[1])
h2 = int(c2[:2]) if c2[0] != '0' else int(c2[1])
m1 = int(c1[3:]) if c1[2] != '0' else int(c1[4])
m2 = int(c2[3:]) if c2[2] != '0' else int(c2[4])
h3 = h2 - h1
m3 = m2 - m1
time = (h3 * 60 + m3) // 2 + m1
print(('0' if h1 + time // 60 < 10 else '') + str(h1 + time // 60) + ':' + ('0' if time % 60 < 10 else '') + str(time % 60))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
time = h1 * 60 + m1 + (h2 * 60 + m2 - h1 * 60 - m1) // 2
hs = time // 60
ms = time % 60
print('%02d' % hs, '%02d' % ms, sep=':')


s1 = input()
s2 = input()
h1 = int(s1[0:2])
m1 = int(s1[3:])
h2 = int(s2[0:2])
m2 = int(s2[3:])
if h1 == h2:
	a = (m2 - m1) // 2
	if len(str(h1)) == 1:
		h1 = '0' + str(h1)
	c = m1 + a
	if len(str(c)) == 1:
		c = '0' + str(c)
	print(h1, ':', c, sep='')
else:
	sum1 = 0
	b = h1
	c = m1
	while h1 != h2:
		sum1 = sum1 + (60 - m1)
		m1 = 0
		h1 += 1
	a = (sum1 + m2) // 2
	a = c + a
	while a >= 60:
		a = a - 60
		b += 1
	if len(str(b)) == 1:
		b = '0' + str(b)
	if len(str(a)) == 1:
		a = '0' + str(a)
	print(b, ':', a, sep='')


from sys import stdin

def main():
	(h1, s1) = [int(x) for x in stdin.readline().strip().split(':')]
	(h2, s2) = [int(x) for x in stdin.readline().strip().split(':')]
	totalMinutes = ((h2 - h1) * 60 + (s2 - s1)) // 2
	hr = h1 + totalMinutes // 60
	sr = s1 + totalMinutes % 60
	if sr >= 60:
		hr += 1
		sr = sr % 60
	print(f'{hr:02d}:{sr:02d}')
main()


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
secs = 0
while not (c == a and d == b):
	d -= 1
	secs += 1
	if d < 0:
		d += 60
		c -= 1
secs = int(secs / 2)
while secs != 0:
	b += 1
	secs -= 1
	if b == 60:
		b = 0
		a += 1
print('%s:%s' % (str(a).zfill(2), str(b).zfill(2)))


(n, m) = map(int, input().split(':'))
(x, y) = map(int, input().split(':'))
t1 = n * 60 + m
t2 = x * 60 + y
t3 = (t2 + t1) // 2
r1 = str(t3 // 60)
r2 = str(t3 % 60)
if t3 // 60 < 10:
	r1 = '0' + r1
if t3 % 60 < 10:
	r2 = '0' + r2
print('{}:{}'.format(r1, r2))


i = list(map(int, input().split(':')))
f = list(map(int, input().split(':')))
a = (f[0] * 60 + f[1] - (i[0] * 60 + i[1])) // 2
ans2 = (i[0] * 60 + i[1] + a) % 60
ans1 = (i[0] * 60 + i[1] + a - ans2) // 60
if len(str(ans2)) == 1 and len(str(ans1)) == 1:
	print('0' + str(ans1) + ':' + '0' + str(ans2))
elif len(str(ans1)) == 1:
	print('0' + str(ans1) + ':' + str(ans2))
elif len(str(ans2)) == 1:
	print(str(ans1) + ':' + '0' + str(ans2))
else:
	print(str(ans1) + ':' + str(ans2))


t = input()
tt = input()
h = t[:2]
hh = tt[:2]
m = t[3:]
mm = tt[3:]
gap = (int(hh) - int(h)) * 60
if int(mm) >= int(m):
	gap += int(mm) - int(m)
else:
	gap += -int(m) + int(mm)
gap //= 2
ih = gap // 60
im = gap % 60
ans1 = int(h) + ih
if int(m) + im >= 60:
	ans1 += 1
ans2 = (int(m) + im) % 60
if ans1 // 10 == 0:
	print(0, end='')
print(ans1, end='')
print(':', end='')
if ans2 // 10 == 0:
	print(0, end='')
print(ans2)


v = input()
h1 = int(v[0]) * 10 + int(v[1])
m1 = int(v[3]) * 10 + int(v[4])
v = input()
h2 = int(v[0]) * 10 + int(v[1])
m2 = int(v[3]) * 10 + int(v[4])
difh = h2 - h1
if difh == 0:
	h3 = h1
	m3 = int((m2 - m1) / 2 + m1)
else:
	minutos = 60 - m1 + m2 + (difh - 1) * 60
	minutos = minutos / 2
	horas = int(minutos / 60)
	minutos = minutos - horas * 60
	if m1 + minutos > 59:
		m3 = int(m1 + minutos - 60)
		h3 = horas + h1 + 1
	else:
		h3 = horas + h1
		m3 = int(m1 + minutos)
p1 = int(h3 / 10)
p2 = int(h3 - p1 * 10)
p3 = int(m3 / 10)
p4 = int(m3 - p3 * 10)
print('{}{}:{}{}'.format(p1, p2, p3, p4))


from sys import exit, setrecursionlimit
setrecursionlimit(10 ** 6)
inn = lambda : input().strip()
mapp_m1 = lambda : map(lambda x: int(x) - 1, inn().split(' '))
mapp = lambda : map(int, inn().split(' '))
(h1, m1) = map(int, inn().split(':'))
(h2, m2) = map(int, inn().split(':'))
minute = ((h2 - h1) * 60 + (m2 - m1)) // 2
h = str(h1 + (m1 + minute) // 60)
m = str((m1 + minute) % 60)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(f'{h}:{m}')


h1m1 = input()
h2m2 = input()
h3m3 = ((int(h1m1[:2]) + int(h2m2[:2])) * 60 + (int(h1m1[3:]) + int(h2m2[3:]))) / 2
h3 = int(h3m3 // 60)
m3 = int(h3m3 % 60)
if m3 >= 0 and m3 < 10:
	m3 = '0' + str(m3)
if h3 >= 0 and h3 < 10:
	h3 = '0' + str(h3)
h3 = str(h3)
m3 = str(m3)
print(h3 + ':' + m3)


import sys
(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
ans1 = (a * 60 + c * 60 + b + d) // 60 // 2
ans2 = (a * 60 + c * 60 + b + d - ans1 * 2 * 60) // 2
print('{:02d}:{:02d}'.format(ans1, ans2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if h2 == h1:
	h3 = str(h1) if h1 >= 10 else '0' + str(h1)
	m3 = str((m1 + m2) // 2) if (m1 + m2) // 2 >= 10 else '0' + str((m1 + m2) // 2)
	print(h3 + ':' + m3)
elif h1 == 0:
	seconds = (h1 + h2) * 1800 + m1 * 30 + m2 * 30
	(m3, s3) = divmod(seconds, 60)
	(h3, m3) = divmod(m3, 60)
	hprint = str(h3) if h3 >= 10 else '0' + str(h3)
	mprint = str(m3) if m3 >= 10 else '0' + str(m3)
	print(hprint + ':' + mprint)
elif h2 == 0:
	seconds = (h1 + 24) * 1800 + m1 * 30 + m2 * 30
	(m3, s3) = divmod(seconds, 60)
	(h3, m3) = divmod(m3, 60)
	hprint = str(h3) if h3 >= 10 else '0' + str(h3)
	mprint = str(m3) if m3 >= 10 else '0' + str(m3)
	print(hprint + ':' + mprint)
else:
	seconds = (h1 + h2) * 1800 + m1 * 30 + m2 * 30
	(m3, s3) = divmod(seconds, 60)
	(h3, m3) = divmod(m3, 60)
	hprint = str(h3) if h3 >= 10 else '0' + str(h3)
	mprint = str(m3) if m3 >= 10 else '0' + str(m3)
	print(hprint + ':' + mprint)


def main(a, b, c, d):
	a *= 60
	c *= 60
	res = (a + b + c + d) / 2
	return res

def calc(inp):
	a = inp % 60
	b = inp // 60
	if a < 10:
		a = '0' + str(int(a))
	else:
		a = str(int(a))
	if b < 10:
		b = '0' + str(int(b))
	else:
		b = str(int(b))
	return b + ':' + a
a = [int(x) for x in input().split(':')]
b = [int(x) for x in input().split(':')]
print(calc(main(a[0], a[1], b[0], b[1])))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
mid = (t1 + t2) // 2
print(f'{mid // 60:02}:{mid % 60:02}')


(start_h, start_m) = map(lambda x: int(x), input().split(':'))
(end_h, end_m) = map(lambda x: int(x), input().split(':'))
mid_minutes = int((start_h * 60 + start_m + end_h * 60 + end_m) / 2)
mid_h = int(mid_minutes / 60)
mid_m = mid_minutes % 60
if len(str(mid_h)) == 1:
	mid_h_str = '0' + str(mid_h)
else:
	mid_h_str = str(mid_h)
if len(str(mid_m)) == 1:
	mid_m_str = '0' + str(mid_m)
else:
	mid_m_str = str(mid_m)
print(mid_h_str + ':' + mid_m_str)


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
t = (60 * h1 + m1 + 60 * h2 + m2) // 2
print(t // 60 if t // 60 >= 10 else '0' + str(t // 60), t % 60 if t % 60 >= 10 else '0' + str(t % 60), sep=':')


a = input().split(':')
b = input().split(':')
c = int(a[0]) * 60 + int(a[1])
d = int(b[1]) + 60 * int(b[0])
e = (d + c) / 2
f = str(int(e // 60))
g = str(int(e % 60))
print(f.zfill(2), ':', g.zfill(2), sep='')


(H1, M1) = list(map(int, input().split(':')))
(H2, M2) = list(map(int, input().split(':')))
(Total1, Total2) = (H1 * 60 + M1, H2 * 60 + M2)
Middle = (Total1 + Total2) // 2
print((str(Middle // 60) if len(str(Middle // 60)) == 2 else '0' + str(Middle // 60)) + ':' + str(Middle % 60 if len(str(Middle % 60)) == 2 else '0' + str(Middle % 60)))


s1 = input().split(':')
s2 = input().split(':')
t1 = int(s1[0]) * 60 + int(s1[1])
t2 = int(s2[0]) * 60 + int(s2[1])
diff = abs(t1 - t2)
diff = diff // 2
t1 += diff
t1 = t1 % (24 * 60)
hours = t1 // 60
minu = t1 % 60
if hours <= 9:
	hours = '0' + str(hours)
else:
	hours = str(hours)
if minu <= 9:
	minu = '0' + str(minu)
else:
	minu = str(minu)
s = hours + ':' + minu
print(s)


(a, b) = list(map(int, input().split(':')))
(c, d) = list(map(int, input().split(':')))
s = a * 60 + b
e = c * 60 + d
t = e - s
t = t // 2
h = t // 60
m = t % 60
k = m + b
p = h + a
j = p
l = k
if l >= 60:
	l = l % 60
	j += 1
if j <= 9:
	j = str('0') + str(j)
if l <= 9:
	l = str('0') + str(l)
print(str(j) + ':' + str(l))


def p(a):
	k = str(a)
	if a // 10 == 0:
		k = '0' + k
	return k

def main():
	(h, m) = map(int, input().split(':'))
	(h1, m1) = map(int, input().split(':'))
	k = (h * 60 + m + h1 * 60 + m1) // 2
	print(p(k // 60), p(k % 60), sep=':')
main()


t1 = input().split(':')
t2 = input().split(':')
t1 = int(t1[0]) * 60 + int(t1[1])
t2 = int(t2[0]) * 60 + int(t2[1])
diff = (t2 - t1) // 2
ans = t1 + diff
hh = ans // 60
mm = ans % 60
if hh % 10 == hh:
	hh = '0' + str(hh)
else:
	hh = str(hh)
if mm % 10 == mm:
	mm = '0' + str(mm)
else:
	mm = str(mm)
ans = hh + ':' + mm
print(ans)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
minutes = h2 * 60 - h1 * 60 + m2 - m1
minutes //= 2
h1 = h1 + (m1 + minutes) // 60
m1 = (m1 + minutes) % 60
h1 = str(h1)
h1 = '0' * (2 - len(h1)) + h1
m1 = str(m1)
m1 = '0' * (2 - len(m1)) + m1
print(h1 + ':' + m1)


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
m1.lstrip('0')
m2.lstrip('0')
h1.lstrip('0')
h2.lstrip('0')
(h1, m1) = (int(h1), int(m1))
(h2, m2) = (int(h2), int(m2))
m1 = h1 * 60 + m1
m2 = h2 * 60 + m2
center = (m1 + m2) / 2
h3 = center // 60
center -= h3 * 60
m3 = center
if h3 < 10 and m3 < 10:
	print(f'{int(h3):02d}:{int(m3):02d}')
elif h3 < 10 and m3 >= 10:
	print(f'{int(h3):02d}:{int(m3)}')
elif h3 >= 10 and m3 < 10:
	print(f'{int(h3)}:{int(m3):02d}')
else:
	print(f'{int(h3)}:{int(m3)}')


a = input()
b = input()
xd = a.split(':')
xd2 = b.split(':')
numofmina = 60 * int(xd[0]) + int(xd[1])
numofminb = 60 * int(xd2[0]) + int(xd2[1])
hi = int((numofminb - numofmina) / 2 + numofmina)
if hi // 60 < 10 and hi % 60 < 10:
	print('0' + str(hi // 60) + ':' + '0' + str(hi % 60))
elif hi // 60 >= 10 and hi % 60 < 10:
	print(str(hi // 60) + ':' + '0' + str(hi % 60))
elif hi // 60 < 10 and hi % 60 >= 10:
	print('0' + str(hi // 60) + ':' + str(hi % 60))
else:
	print(str(hi // 60) + ':' + str(hi % 60))


(A, B) = list(map(int, input().split(':')))
(C, D) = list(map(int, input().split(':')))
a = A * 60 + B
b = C * 60 + D
c = (a + b) // 2
print(str(c // 60).zfill(2) + ':' + str(c % 60).zfill(2))


[h, m] = input().split(':')
[h2, m2] = input().split(':')
s = int(h) * 60 + int(h2) * 60 + int(m) + int(m2)
h3 = s // 120
m3 = s // 2 % 60
if h3 < 10:
	print('0', end='')
print(h3, end=':')
if m3 < 10:
	print('0', end='')
print(m3, end='')


a = []
for i in range(2):
	str_in = input()
	for j in range(len(str_in)):
		if str_in[j].isdigit():
			a.append(int(str_in[j]))
starttime_h = a[0] * 10 + a[1]
starttime_m = a[2] * 10 + a[3]
endtime_h = a[4] * 10 + a[5]
endtime_m = a[6] * 10 + a[7]
midd = (endtime_h * 60 + endtime_m + starttime_h * 60 + starttime_m) / 2
h = int(midd // 60)
m = int(midd % 60)
str_1 = ''
if h == 0:
	str_1 += '00'
elif h < 10:
	str_1 += '0'
	str_1 += str(h)
else:
	str_1 += str(h)
str_1 += ':'
if m == 0:
	str_1 += '00'
elif m < 10:
	str_1 += '0'
	str_1 += str(m)
else:
	str_1 += str(m)
print(str_1)


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
start = h1 * 60 + m1
end = h2 * 60 + m2
duration = end - start
mid = duration // 2
mid_time = start + mid
h_mid = mid_time // 60
m_mid = mid_time % 60
print(str(h_mid).zfill(2) + ':' + str(m_mid).zfill(2))


import math
time1 = list(map(int, input().split(':')))
time2 = list(map(int, input().split(':')))
half = ((time2[0] - time1[0]) * 60 + (time2[1] - time1[1])) / 2
minutes = math.floor(half % 60 + time1[1])
hour = math.floor(time1[0] + half / 60)
if minutes >= 60:
	hour += 1
	minutes %= 60
strHour = str(hour)
strMinutes = str(minutes)
if hour < 10:
	strHour = '0' + str(hour)
if minutes < 10:
	strMinutes = '0' + str(minutes)
print(strHour + ':' + strMinutes)


a = input()
b = input()
h1 = int(a[0] + a[1])
h2 = int(b[0] + b[1])
m2 = int(b[3] + b[4])
m1 = int(a[3] + a[4])
h = (h1 + h2) // 2
m = (m1 + m2) // 2
if (h1 + h2) % 2 != 0:
	m += 30
h += m // 60
m = m % 60
if h < 10 and m < 10:
	h = str('0' + str(h))
	m = str('0' + str(m))
	print(h + ':' + m)
elif h < 10:
	h = str('0' + str(h))
	m = str(m)
	print(h + ':' + m)
elif m < 10:
	h = str(h)
	m = str('0' + str(m))
	print(h + ':' + m)
else:
	h = str(h)
	m = str(m)
	print(h + ':' + m)


import sys
sys.setrecursionlimit(1000000)
(h1, m1) = map(int, input().strip().split(':'))
(h2, m2) = map(int, input().strip().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = (t1 + t2) // 2
print(str(t // 60).zfill(2) + ':' + str(t % 60).zfill(2))


(ah, am) = map(int, input().split(':'))
(bh, bm) = map(int, input().split(':'))
tot = bh * 60 + bm - (ah * 60 + am)
mid = tot // 2
oh = ah
om = am
for x in range(mid):
	om += 1
	if om >= 60:
		oh += 1
		om = 0
if len(str(om)) == 1:
	om = '0' + str(om)
if len(str(oh)) == 1:
	oh = '0' + str(oh)
print(oh, om, sep=':')


a = input()
b = input()
a = a.split(':')
b = b.split(':')
x = int(a[0]) * 60 + int(a[1])
y = int(b[0]) * 60 + int(b[1])
z = int((x + y) / 2)
print('%02d:%02d' % (z // 60, z % 60))


(n1, k1) = [int(x) for x in input('').split(':')]
(n2, k2) = [int(x) for x in input('').split(':')]
ch = 60 * (n2 - n1) + (k2 - k1)
ch1 = ch // 2 % 60
ch2 = ch // 2
if k1 + ch1 >= 60:
	n3 = n1 + ch2 // 60 + 1
	k3 = k1 + ch1 - 60
else:
	n3 = n1 + ch2 // 60
	k3 = k1 + ch1
n = '{:02d}'.format(n3)
k = '{:02d}'.format(k3)
print(n + ':' + k)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t3 = (t1 + t2) // 2
t3_h = '{:02d}'.format(t3 // 60)
t3_m = '{:02d}'.format(t3 % 60)
print(f'{t3_h}:{t3_m}')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
h3 = (h1 + h2) / 2
m3 = (m1 + m2) / 2
if (h1 + h2) % 2 == 1:
	m3 = m3 + 30
	h3 = h3 - 0.5
if m3 == 60:
	m3 = m3 - 60
	h3 = h3 + 1
if m3 > 60:
	m3 = m3 - 60
	h3 = h3 + 1
if h3 < 10:
	if m3 < 10:
		time = '0' + str(int(h3)) + ':' + '0' + str(int(m3))
	else:
		time = '0' + str(int(h3)) + ':' + str(int(m3))
elif m3 < 10:
	time = str(int(h3)) + ':' + '0' + str(int(m3))
else:
	time = str(int(h3)) + ':' + str(int(m3))
print(time)


s1 = input().split(':')
s2 = input().split(':')
h1 = int(s1[0])
m1 = int(s1[1])
h2 = int(s2[0])
m2 = int(s2[1])
minutes1 = h1 * 60 + m1
minutes2 = h2 * 60 + m2
mid = minutes1 + minutes2
mid //= 2
h = mid // 60
m = mid % 60
if mid // 60 < 10:
	h = '0' + str(mid // 60)
if mid % 60 < 10:
	m = '0' + str(mid % 60)
print(str(h) + ':' + str(m))


inp = input()
h1 = int(inp[:2])
m1 = int(inp[3:])
inp = input()
h2 = int(inp[:2])
m2 = int(inp[3:])
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
time = (time1 + time2) / 2
hour = str(int(time / 60))
minutes = str(int(time % 60))
if len(hour) == 1:
	hour = '0' + hour
if len(minutes) == 1:
	minutes = '0' + minutes
print(hour + ':' + minutes)


import math
s1 = input()
s2 = input()
a = s1.split(':')
b = s2.split(':')
mins = (int(b[0]) * 60 + int(b[1]) + (60 * int(a[0]) + int(a[1]))) // 2
hr = mins // 60
minn = mins % 60
if hr < 10:
	print('0', end='')
	print(hr, end='')
else:
	print(hr, end='')
print(':', end='')
if minn < 10:
	print('0', end='')
	print(minn)
else:
	print(minn)


def contest(h1, m1, h2, m2):
	diff_hrs = h2 - h1
	diff_mins = m2 - m1
	total_mins = diff_hrs * 60 + diff_mins
	half_mins = total_mins // 2
	h3 = h1 + half_mins // 60
	m3 = m1 + half_mins % 60
	if m3 >= 60:
		m3 = m3 % 60
		h3 = h3 + 1
	if h3 < 10:
		h3 = '0' + str(h3)
	if m3 < 10:
		m3 = '0' + str(m3)
	print('{}:{}'.format(h3, m3))
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
contest(h1, m1, h2, m2)


(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
summ = (t2 - t1) // 2
h3 = str(h1 + (summ + m1) // 60)
m3 = str((m1 + summ) % 60)
if len(h3) == 1:
	h3 = '0' + str(h3)
if len(m3) == 1:
	m3 = '0' + str(m3)
print(str(h3) + ':' + str(m3))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
x = c - a
y = d - b
if y < 0:
	x -= 1
	y += 60
if x % 2 != 0:
	if y >= 60:
		y -= 60
		x += 1
	else:
		y += 60
		x -= 1
p = a + x // 2
q = b + y // 2
if q >= 60:
	p += q // 60
	q = q % 60
if p < 10:
	print('0', end='')
print(p, end='')
print(':', end='')
if q < 10:
	print('0', end='')
print(q)


def mid(a, b):
	(ha, ma) = a
	(hb, mb) = b
	l = int((hb - ha) * 60 + mb - ma) // 2
	(hx, mx) = divmod(l + ma, 60)
	print(f'{ha + hx:02d}:{mx:02d}')

def main():
	a = map(int, input().split(':'))
	b = map(int, input().split(':'))
	mid(a, b)
main()


(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
rh = (60 * (h2 - h1) + (m2 - m1)) / 2
mh = m1 + int(rh % 60)
hh = h1 + int(rh // 60) + int(mh // 60)
mh = int(mh % 60)
if len(str(hh)) == 1:
	hh = '0' + str(hh)
if len(str(mh)) == 1:
	mh = '0' + str(mh)
print(hh, mh, sep=':')


t1 = input()
t2 = input()
(t1h, t1m) = t1.split(':')
(t2h, t2m) = t2.split(':')
medmin = (int(t1m) + int(t2m)) // 2
medh = (int(t1h) + int(t2h)) / 2
exmin = medh * 10 % 10 * 6
medmin += exmin
if medmin >= 60:
	medh += 1
	medmin -= 60
if medh >= 24:
	medh -= 24
print('{:0=2}:{:0=2}'.format(int(medh), int(medmin)))


import math
(a1, a2) = map(int, input().split(':'))
(b1, b2) = map(int, input().split(':'))
diff = (b1 - a1) * 60 + (b2 - a2)
half = diff / 2
mm = a1 * 60 + a2 + half
p1 = int(math.floor(mm / 60))
p2 = int(mm % 60)
print('{:02}:{:02}'.format(p1, p2))


def formatHour(n):
	if n >= 10:
		return str(n)
	else:
		return '0' + str(n)
(s_h, s_m) = map(int, input().split(':'))
(e_h, e_m) = map(int, input().split(':'))
half_delta = ((e_h - s_h) * 60 - s_m + e_m) / 2
delta_in_hours = int(half_delta / 60)
m_h = s_h + delta_in_hours
m_candidate = int(s_m + half_delta - delta_in_hours * 60)
if m_candidate < 60:
	m_m = m_candidate
else:
	m_m = m_candidate - 60
	m_h = m_h + 1
print(formatHour(m_h) + ':' + formatHour(m_m))


s1 = str(input())
s2 = str(input())
min1 = int(s1[:-3]) * 60 + int(s1[-2:])
min2 = int(s2[:-3]) * 60 + int(s2[-2:])
avg = (min1 + min2) / 2
minutes = avg % 60
hours = (avg - minutes) / 60
minutes = str(int(minutes))
hours = str(int(hours))
if len(minutes) == 1:
	minutes = '0' + minutes
if len(hours) == 1:
	hours = '0' + hours
print(hours + ':' + minutes)


def f_o(r):
	n = len(r)
	return '0' * (2 - n) + r
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
hm1 = h1 * 60 + m1
hm2 = h2 * 60 + m2
m = (hm1 + hm2) // 2
h1 = str(m // 60)
m2 = str(m % 60)
print(f_o(h1) + ':' + f_o(m2))


a = input().strip()
b = input().strip()
h1 = int(a[:2])
m1 = int(a[3:])
h2 = int(b[:2])
m2 = int(b[3:])
t = (60 * (h2 - h1) + (m2 - m1)) / 2
t2 = 60 * h1 + m1 + t
h1 = int(t2 / 60)
m1 = int(t2 % 60)
if h1 < 10:
	a = '0' + str(h1)
else:
	a = str(h1)
a += ':'
if m1 < 10:
	a += '0' + str(m1)
else:
	a += str(m1)
print(a)


time1 = input()
time2 = input()
total1 = int(time1[0] + time1[1]) * 60 + int(time1[3] + time1[4])
total2 = int(time2[0] + time2[1]) * 60 + int(time2[3] + time2[4])
total = int(total1 + (total2 - total1) / 2)
hour = str(int(total / 60))
minutes = str(total % 60)
if int(total / 60) < 10:
	hour = '0' + str(int(total / 60))
if int(total % 60) < 10:
	minutes = '0' + str(total % 60)
time = hour + ':' + minutes
print(time)


h_ini = [int(i) for i in input().split(':')]
h_fim = [int(i) for i in input().split(':')]

def printa_horario(minutos):
	aux = minutos // 60
	if aux < 10:
		hora = '0' + str(aux)
	else:
		hora = str(aux)
	hora += ':'
	aux = minutos % 60
	if aux < 10:
		hora += '0' + str(aux)
	else:
		hora += str(aux)
	print(hora)
dif = 60 * h_fim[0] + h_fim[1] - (60 * h_ini[0] + h_ini[1])
dif = dif // 2
novo = 60 * h_ini[0] + h_ini[1] + dif
printa_horario(novo)


import sys
hm = input()
h = int(hm[:2])
m = int(hm[3:])
hm = input()
h2 = int(hm[:2])
m2 = int(hm[3:])
sun = h * 60 + m + h2 * 60 + m2
print('{0:02d}:{1:02d}'.format(int(sun / 120), int(sun / 2) % 60))


s = input()
s1 = input()
h = int(s[:2])
m = int(s[3:])
t = h * 60 + m
h = int(s1[:2])
m = int(s1[3:])
t2 = h * 60 + m
t = (t2 + t) // 2
h = t // 60
m = t % 60
print(h // 10, h % 10, ':', m // 10, m % 10, sep='')


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
h = a
m = b
while h * 60 + m - a * 60 - b != c * 60 + d - h * 60 - m:
	m += 1
	if m == 60:
		m = 0
		h += 1
d = '0000' + str(h)
m = '0000' + str(m)
print(''.join([d[-2:], ':', m[-2:]]))


a = input()
b = input()
h1 = int(a[:a.find(':')])
h2 = int(b[:b.find(':')])
m1 = int(a[a.find(':') + 1:])
m2 = int(b[b.find(':') + 1:])
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
d = (t2 - t1) // 2
z = str((m1 + d % 60) % 60)
if len(z) == 1:
	z = '0' + z
w = str(h1 + d // 60 + (m1 + d % 60) // 60)
if len(w) == 1:
	w = '0' + w
print(w + ':' + z)


I = lambda : map(int, input().split(':'))
(x, y) = I()
(a, b) = I()
x = x * 60 + y
a = a * 60 + b
r = (a + x) // 2
print([[str(r // 60), '0' + str(r // 60)][r // 60 < 10] + ':0' + str(r % 60), [str(r // 60), '0' + str(r // 60)][r // 60 < 10] + ':' + str(r % 60)][not r % 60 < 10])


a = input().split(':')
b = input().split(':')
h1 = int(a[0])
m1 = int(a[1])
h2 = int(b[0])
m2 = int(b[1])
s1 = h1 * 60 + m1
s2 = h2 * 60 + m2
m = (s2 - s1) // 2
m += s1
h = m // 60
m = m % 60
if h < 10 and m < 10:
	print('0', h, ':', 0, m, sep='')
elif h < 10:
	print('0', h, ':', m, sep='')
elif m < 10:
	print(h, ':', 0, m, sep='')
else:
	print(h, ':', m, sep='')


a = input()
b = input()
h1 = int(a[0]) * 10 + int(a[1])
m1 = int(a[3]) * 10 + int(a[4])
h2 = int(b[0]) * 10 + int(b[1])
m2 = int(b[3]) * 10 + int(b[4])
s = h1 * 60 + m1 + h2 * 60 + m2
s = s / 2
h = int(s / 60)
m = int(s % 60)
if h < 10:
	print(0, end='')
print(h, end=':')
if m < 10:
	print(0, end='')
print(m)


t1 = input()
t2 = input()
h1 = int(t1[:2])
h2 = int(t2[:2])
m1 = int(t1[3:])
m2 = int(t2[3:])
s = (h2 - h1) * 60 + (m2 - m1)
m3 = m2 - m1
sh = s // 120 + h1
sm = s / 2 % 60 + m1
if sm >= 60:
	sh = sh + 1
	sm = sm - 60
print('%02d' % sh, end='')
print(':', end='')
print('%02d' % sm, end='')


horario1 = input()
horario2 = input()
horas1 = int(horario1[:2])
minutos1 = int(horario1[3:])
horas2 = int(horario2[:2])
minutos2 = int(horario2[3:])
somahoras = horas1 + horas2
minutosmedios = 0
if somahoras % 2 == 1:
	minutosmedios = 30
horasmedias = int(somahoras / 2)
minutosmedios += int((minutos1 + minutos2) / 2)
if minutosmedios >= 60:
	minutosmedios -= 60
	horasmedias += 1
print('{:02d}:{:02d}'.format(horasmedias, minutosmedios))


i = [int(j) for j in input().split(':')]
f = [int(j) for j in input().split(':')]
if i[0] > f[0] or (i[0] == f[0] and i[1] >= f[1]):
	f[0] += 24
rm = int((f[1] + i[1] + (f[0] + i[0]) * 60) / 2)
rh = int(rm / 60) % 24
rm = rm % 60
if rh < 10:
	rh = '0' + str(rh)
else:
	rh = str(rh)
if rm < 10:
	rm = '0' + str(rm)
else:
	rm = str(rm)
print(rh + ':' + rm)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
ha = (h1 * 60 + m1 + h2 * 60 + m2) // 2
h = int(ha / 60)
ha = ha % 60
m = ha % 60
if h < 10:
	print('0', end='')
	print(h, end='')
	print(':', end='')
else:
	print(h, end='')
	print(':', end='')
if m < 10:
	print('0', end='')
	print(m, end='')
else:
	print(m)


from datetime import datetime
inp_1 = input()
inp_2 = input()
format = '%H:%M'
time = (datetime.strptime(inp_1, format) - datetime.strptime(inp_2, format)) / 2
pre_ans = str(datetime.strptime(inp_1, format) - time).split()
ans = pre_ans[1].split(':')
print(str(ans[0]) + ':' + str(ans[1]))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
m = (h1 + h2) * 30 + (m1 + m2) // 2
print(f'{m // 60:02d}:{m % 60:02d}')


iin = lambda : int(input())
lin = lambda : list(map(int, input().split()))
(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
a = 60 + m2 - m1
if a >= 60:
	a = a % 60 + (h2 - h1) * 60
else:
	a = a + (h2 - h1 - 1) * 60
a //= 2
m1 += a % 60
h1 += a // 60 + m1 // 60
m1 %= 60
sol = ''
if h1 < 10:
	sol += '0' + str(h1)
else:
	sol += str(h1)
sol += ':'
if m1 < 10:
	sol += '0' + str(m1)
else:
	sol += str(m1)
print(sol)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
M1 = 60 * h1 + m1
M2 = 60 * h2 + m2
M = (M1 + M2) // 2
(h, m) = (M // 60, M % 60)
print(f'{h:02}:{m:02}')


(x, y) = map(int, input().split(':'))
(a, b) = map(int, input().split(':'))
x = x * 60 + y
a = a * 60 + b
tot = int((a + x) / 2)
new_hr = int(tot // 60)
new_min = int(tot % 60)
c = str(new_hr).zfill(2)
d = str(new_min).zfill(2)
print(c + ':' + d)


from datetime import datetime
time1 = input('')
tpl1 = list(map(int, time1.split(':')))
time2 = input('')
tpl2 = list(map(int, time2.split(':')))
FMT = '%H:%M'
delta = datetime.strptime(time2, FMT) - datetime.strptime(time1, FMT)
half = datetime.strptime(time1, FMT) + delta / 2
print(str(datetime.time(half))[0:5])


h1 = list(map(int, input().split(':')))
h2 = list(map(int, input().split(':')))
T1 = 60 * h1[0] + h1[1]
T2 = 60 * h2[0] + h2[1]
bonus = (T1 + T2) // 2
(h, m) = (str(bonus // 60), str(bonus % 60))
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


from datetime import datetime
time1 = input('')
tpl1 = list(map(int, time1.split(':')))
time2 = input('')
tpl2 = list(map(int, time2.split(':')))
FMT = '%H:%M'
if (tpl1[0] < 24 and tpl1[0] > -1 and (tpl2[0] < 24) and (tpl2[0] > -1)) and (tpl1[1] < 60 and tpl1[1] > -1 and (tpl2[1] < 60) and (tpl2[1] > -1)) and (tpl1[1] % 2 == tpl2[1] % 2):
	delta = datetime.strptime(time2, FMT) - datetime.strptime(time1, FMT)
	half = datetime.strptime(time1, FMT) + delta / 2
	print(str(datetime.time(half))[0:5])


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
t = (a * 60 + b + c * 60 + d) // 2
print(f'{t // 60:02}:{t % 60:02}')


a = str(input())
b = str(input())
h1 = int(a[0:2])
h2 = int(b[0:2])
m1 = int(a[3:5])
m2 = int(b[3:5])
c = h1 * 60 + m1
d = h2 * 60 + m2
ans = abs(h1 * 60 + m1 - (h2 * 60 + m2)) // 2
ans += min(c, d)
h = ans // 60
if h < 10:
	h = '0' + str(h)
m = ans % 60
if m < 10:
	m = '0' + str(m)
r = str(h) + ':' + str(m)
print(r)


(n1, m1) = map(int, input().split(':'))
(n2, m2) = map(int, input().split(':'))
s = (n1 * 60 + m1 + n2 * 60 + m2) // 2
a = s // 60
s = s % 60
if len(str(a)) == 1:
	print('0' + str(a), end=':')
else:
	print(a, end=':')
if len(str(s)) == 1:
	print('0' + str(s))
else:
	print(s)


(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
mid = t2 - t1
m1 = m1 + mid // 2
h1 += m1 // 60
m1 %= 60
if h1 < 10:
	h1 = '0' + str(h1)
if m1 < 10:
	m1 = '0' + str(m1)
print(str(h1) + ':' + str(m1))


s = input()
t = input()
s = s.split(':')
t = t.split(':')
s[0] = int(s[0])
s[1] = int(s[1])
t[0] = int(t[0])
t[1] = int(t[1])
if t[0] == s[0]:
	m = t[1] - s[1]
else:
	m = 60 * (t[0] - s[0] - 1) + (60 - s[1]) + t[1]
m /= 2
h = m // 60
i = m % 60
s[0] += h
s[1] += i
if s[1] >= 60:
	s[1] -= 60
	s[0] += 1
s[0] = str(int(s[0]))
s[1] = str(int(s[1]))
if len(s[0]) == 2 and len(s[1]) == 2:
	print(s[0], s[1], sep=':')
elif len(s[0]) == 2 and len(s[1]) != 2:
	print(s[0], ':0', s[1], sep='')
elif len(s[0]) != 2 and len(s[1]) == 2:
	print('0', s[0], ':', s[1], sep='')
else:
	print('0', s[0], ':0', s[1], sep='')


from collections import *
from math import *
s = input()
e = input()
s = int(s[:2]) * 60 + int(s[3:])
e = int(e[:2]) * 60 + int(e[3:])
t = (s + e) // 2
h = str(t // 60)
m = str(t % 60)
if len(h) == 1:
	h = '0' + str(h)
if len(m) == 1:
	m = '0' + str(m)
print(h + ':' + m)


def ans(h1m1, h2m2):
	(h1, m1) = (int(h1m1[0]), int(h1m1[1]))
	(h2, m2) = (int(h2m2[0]), int(h2m2[1]))
	cnt = 0
	for _ in range(h1, h2):
		cnt += 60
	cnt += m2 - m1
	cnt = cnt // 2
	h0 = cnt // 60
	m0 = cnt - h0 * 60
	h0 += h1
	m0 += m1
	if m0 >= 60:
		h0 += m0 // 60
		m0 = m0 - m0 // 60 * 60
	(h0, m0) = (str(h0), str(m0))
	if len(h0) == 1:
		h0 = '0' + h0
	if len(m0) == 1:
		m0 = '0' + m0
	return h0 + ':' + m0
h1m1 = input().split(':')
h2m2 = input().split(':')
print(ans(h1m1, h2m2))


n1 = input()
n2 = input()
h1 = int(n1[:2])
m1 = int(n1[3:])
h2 = int(n2[:2])
m2 = int(n2[3:])
h3 = (h1 + h2) // 2
m3 = (m1 + m2) // 2
if (h1 + h2) % 2 != 0:
	m3 += 30
if m3 >= 60:
	h3 += 1
	m3 -= 60
if h3 < 10:
	if m3 < 10:
		s = '0' + str(h3) + ':' + '0' + str(m3)
	else:
		s = '0' + str(h3) + ':' + str(m3)
elif m3 < 10:
	s = str(h3) + ':' + '0' + str(m3)
else:
	s = str(h3) + ':' + str(m3)
print(s)


start_point = input()
end_point = input()
h1 = int(start_point.split(':')[0]) * 60
m1 = int(start_point.split(':')[1])
h2 = int(end_point.split(':')[0]) * 60
m2 = int(end_point.split(':')[1])
half_time = int((h2 + m2 - h1 - m1) / 2)
total_3 = h1 + m1 + half_time
m3 = str(total_3 % 60)
h3 = str(int(total_3 / 60))
if len(m3) == 1:
	m3 = '0' + m3
if len(h3) == 1:
	h3 = '0' + h3
print('{}:{}'.format(h3, m3))


from sys import stdin

def ip():
	return [int(i) for i in stdin.readline().split()]

def sp():
	return [str(i) for i in stdin.readline().split()]

def solve():
	s = str(input())
	t = str(input())
	(sm, ss) = (int(s[:2]), int(s[3:]))
	(tm, ts) = (int(t[:2]), int(t[3:]))
	res = int((ts - ss + abs(tm - sm) * 60) // 2)
	rs = res % 60
	rm = int(res // 60)
	ls = int((ss + rs) // 60)
	ss = (ss + rs) % 60
	sm = (sm + rm + ls) % 24
	if ss < 10:
		ss = '0' + str(ss)
	if sm < 10:
		sm = '0' + str(sm)
	return str(sm) + ':' + str(ss)
print(solve())


str1 = input()
str2 = input()
(h1, m1) = map(int, str1.split(':'))
(h2, m2) = map(int, str2.split(':'))
hm = (h1 * 60 + m1 + m2 + h2 * 60) // 2 // 60
mm = (h1 * 60 + m1 + m2 + h2 * 60) // 2 % 60
h1 = hm
m1 = mm
if h1 < 10:
	h1 = '0' + str(h1)
if m1 < 10:
	m1 = '0' + str(m1)
h1 = str(h1)
m1 = str(m1)
print(h1 + ':' + m1)


a = [int(i) for i in input().split(':')]
b = [int(i) for i in input().split(':')]
a1 = a[0] * 60 + a[1]
b1 = b[0] * 60 + b[1]
md = (a1 + b1) / 2
h = md // 60
m = md - h * 60
print(str(int(h)).zfill(2) + ':' + str(int(m)).zfill(2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
m1t = h1 * 60 + m1
m2t = h2 * 60 + m2
m3t = (m1t + m2t) // 2
h3 = m3t // 60
m3 = m3t - h3 * 60
print(str(h3).zfill(2) + ':' + str(m3).zfill(2))


from datetime import datetime, timedelta
start_time = datetime.strptime(input(), '%H:%M')
end_time = datetime.strptime(input(), '%H:%M')
middle_time = start_time + (end_time - start_time) // 2
print(middle_time.strftime('%H:%M'))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
M1 = 60 * h1 + m1
M2 = 60 * h2 + m2
minMil = (M1 + M2) // 2
minH = minMil // 60
minMin = minMil % 60
if minH < 10:
	cminh = '0' + str(minH)
else:
	cminh = str(minH)
if minMin < 10:
	cminm = '0' + str(minMin)
else:
	cminm = str(minMin)
print(cminh, cminm, sep=':')


s = input()
t = input()
hour1 = ''
hour1 += s[0]
hour1 += s[1]
hour1 = int(hour1) * 60
minute1 = ''
minute1 += s[3]
minute1 += s[4]
minute1 = int(minute1)
hour2 = ''
hour2 += t[0]
hour2 += t[1]
hour2 = int(hour2) * 60
minute2 = ''
minute2 += t[3]
minute2 += t[4]
minute2 = int(minute2)
hour1 += minute1
hour2 += minute2
ans = (hour2 - hour1) // 2
res = hour1 + ans
if res // 60 < 10:
	print('0', res // 60, end='', sep='')
else:
	print(res // 60, end='')
print(':', end='')
if res % 60 < 10:
	print('0', res % 60, end='', sep='')
else:
	print(res % 60, end='')


TMP1 = list(map(str, input().split(':')))
TMP2 = list(map(str, input().split(':')))
X = 0
OVER = False
s1 = int(TMP1[1]) + int(TMP2[1])
if s1 >= 60:
	OVER = True
	X = s1 - 60
else:
	X = int(TMP1[1]) + int(TMP2[1])
s2 = int(TMP1[0]) + int(TMP2[0])
X //= 2
if OVER:
	s2 += 1
if s2 % 2 == 0:
	s2 //= 2
else:
	s2 //= 2
	X += 30
if len(str(s2)) < 2:
	print('0' + str(s2) + ':', end='')
else:
	print(str(s2) + ':', end='')
if len(str(X)) < 2:
	print('0' + str(X), end='')
else:
	print(str(X), end='')


def sint():
	return int(input())

def sints():
	return map(int, input().split())

def sara():
	return list(map(int, input().split()))

def sstr():
	s = input()
	return list(s[:len(s)])

def main():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	m = (h2 - h1) * 60 + (m2 - m1)
	m //= 2
	m1 = m1 + m
	h1 += m1 // 60
	m1 %= 60
	sh = str(h1)
	sm = str(m1)
	if h1 / 10 < 1:
		sh = '0' + sh
	if m1 / 10 < 1:
		sm = '0' + sm
	print(sh, end=':')
	print(sm)
main()


i = str(input())
f = str(input())
ti = int(f'{i[0]}{i[1]}') * 60 + int(f'{i[3]}{i[4]}')
tf = int(f'{f[0]}{f[1]}') * 60 + int(f'{f[3]}{f[4]}')
m = (ti + tf) / 2
tm = ti + (tf - m)
if int(tm // 60) >= 10 and int(tm % 60) >= 10:
	print(f'{int(tm // 60)}:{int(tm % 60)}')
elif int(tm // 60) >= 10 and int(tm % 60) < 10:
	print(f'{int(tm // 60)}:0{int(tm % 60)}')
elif int(tm // 60) < 10 and int(tm % 60) >= 10:
	print(f'0{int(tm // 60)}:{int(tm % 60)}')
else:
	print(f'0{int(tm // 60)}:0{int(tm % 60)}')


t1 = input()
t2 = input()
h1 = int(t1[0:2])
h2 = int(t2[0:2])
m1 = int(t1[3:5])
m2 = int(t2[3:5])
if h1 == h2:
	mm = m2 - int((m2 - m1) / 2)
	hh = h1
else:
	mdiff = 60 - m1 + m2 + (h2 - h1 - 1) * 60
	mdiff = int(mdiff / 2)
	hh = h1 + int(mdiff / 60)
	mdiff -= int(mdiff / 60) * 60
	if m1 + mdiff >= 60:
		hh += 1
		mm = (mdiff + m1) % 60
	else:
		mm = mdiff + m1
if hh < 10:
	ans = '0' + str(hh)
	hh = ans
if mm < 10:
	ans = '0' + str(mm)
	mm = ans
print(str(hh) + ':' + str(mm))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
tmp = h1 * 60 + m1 + m2 + h2 * 60
m3 = str(tmp // 2 % 60)
h3 = str(tmp // 120)
if len(m3) < 2:
	m3 = '0' + m3
if len(h3) < 2:
	h3 = '0' + h3
print(h3, m3, sep=':')


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
a = a[0] * 60 + a[1]
b = b[0] * 60 + b[1]
c = (a + b) // 2
h = str(c // 60)
m = str(c % 60)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
sum1 = a * 60 + b
sum2 = c * 60 + d
r1 = (sum2 - sum1) // 2
t1 = r1 // 60
p = b + r1 - t1 * 60
h = a + t1
while p >= 60:
	p -= 60
	h += 1
if h >= 10 and p >= 10:
	print(str(h) + ':' + str(p))
elif h >= 10 and p < 10:
	print(str(h) + ':' + '0' + str(p))
elif h < 10 and p >= 10:
	print('0' + str(h) + ':' + str(p))
elif h < 10 and p < 10:
	print('0' + str(h) + ':' + '0' + str(p))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
h = (a * 60 + b + c * 60 + d) // 120
m = (a * 60 + b + c * 60 + d) // 2 % 60
d = '0000' + str(h)
m = '0000' + str(m)
print(''.join([d[-2:], ':', m[-2:]]))


(hour1, minu1) = map(str, input().split(':'))
(hour2, minu2) = map(str, input().split(':'))
rez = ((int(hour2) - int(hour1)) * 60 + int(minu2) - int(minu1)) // 2
newh = int(hour1) + rez // 60 + (int(minu1) + rez % 60) // 60
if newh < 10:
	newh = '0' + str(newh)
newm = (int(minu1) + rez % 60) % 60
if newm < 10:
	newm = '0' + str(newm)
print(newh, ':', newm, sep='')


a = list(input().rstrip().split(':'))
b = list(input().rstrip().split(':'))
h1 = int(a[0])
h2 = int(b[0])
m1 = int(a[1])
m2 = int(b[1])
total_min = 60 - m1 + m2 + (h2 - (h1 + 1)) * 60
total_min = total_min // 2
total_hour = total_min // 60
remaining = total_min % 60
final = h1 + total_hour
finalhour = (m1 + remaining) // 60
final = final + finalhour
mini = (m1 + remaining) % 60
if len(str(mini)) == 1:
	mini = '0' + str(mini)
if len(str(final)) == 1:
	final = '0' + str(final)
print(str(final) + ':' + str(mini))


start = input().split(':')
end = input().split(':')
start_h = int(start[0])
start_m = int(start[1])
end_h = int(end[0])
end_m = int(end[1])
diff_h = end_h - start_h
diff_m = end_m - start_m
if diff_m < 0:
	diff_m += 60
	diff_h -= 1
minutes = (diff_h * 60 + diff_m) // 2
hour = start_h + minutes // 60
minute = start_m + minutes % 60
if minute >= 60:
	minute -= 60
	hour += 1
print('%02d:%02d' % (hour, minute))


(h1, m1) = [int(k) for k in input().split(':')]
(h2, m2) = [int(k) for k in input().split(':')]
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
mid = (t1 + t2) // 2
h_mid = mid // 60
m_mid = int(mid % 60)
print(('0' if h_mid < 10 else '') + str(h_mid) + ':' + ('0' if m_mid < 10 else '') + str(m_mid))


a = input()
a1 = int(a[0:2]) * 60 + int(a[3:])
b = input()
b1 = int(b[0:2]) * 60 + int(b[3:])
mid = a1 + b1 >> 1
a2 = mid / 60
b2 = mid % 60
if a2 < 10:
	str1 = '0' + str(int(a2)) + ':'
else:
	str1 = str(int(a2)) + ':'
if b2 < 10:
	str2 = '0' + str(int(b2))
else:
	str2 = str(int(b2))
str = str1 + str2
print(str)


from datetime import timedelta, datetime
start_time = input()
end_time = input()
time_format = '%H:%M'
start = datetime.strptime(start_time, time_format)
end = datetime.strptime(end_time, time_format)
h = (end - start).total_seconds() / 2
half = start + timedelta(seconds=h)
print(half.strftime(time_format))


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
s = (int(h2) * 60 + int(m2) - int(h1) * 60 - int(m1)) // 2 + int(h1) * 60 + int(m1)
if len(str(s // 60)) == 1:
	s1 = '0' + str(s // 60)
else:
	s1 = str(s // 60)
if len(str(s % 60)) == 1:
	s2 = '0' + str(s % 60)
else:
	s2 = str(s % 60)
ss = s1 + ':' + s2
print(ss)


t1 = input()
h1 = int(t1[:2])
m1 = int(t1[3:])
t2 = input()
h2 = int(t2[:2])
m2 = int(t2[3:])
t = (h2 * 60 + m2 - (h1 * 60 + m1)) // 2
h = h1 + t // 60
m = m1 + t % 60
if m >= 60:
	h = h + 1
	m = m - 60
print('{:02d}'.format(h) + ':' + '{:02d}'.format(m))


t1 = input()
t2 = input()
h1 = t1.split(':')[0]
m1 = t1.split(':')[1]
h2 = t2.split(':')[0]
m2 = t2.split(':')[1]
time1 = int(h1) * 60 + int(m1)
time2 = int(h2) * 60 + int(m2)
ans = (time1 + time2) / 2
if ans // 60 < 10:
	res = '0' + str(int(ans // 60)) + ':'
else:
	res = str(int(ans // 60)) + ':'
if ans % 60 < 10:
	if ans % 60 == 0:
		res += '00'
	else:
		res += '0' + str(int(ans % 60))
else:
	res += str(int(ans % 60))
print(res)


A = list(map(int, input().split(':')))
B = list(map(int, input().split(':')))
SUM = (A[0] * 60 + A[1] + B[0] * 60 + B[1]) // 2
(x, y) = divmod(SUM, 60)
print(str(x).zfill(2) + ':' + str(y).zfill(2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if h1 == h2:
	h3 = h1
	m3 = (m2 - m1) // 2 + m1
	c = m3
	d = h3
	if len(str(m3)) == 1:
		m3 = m3 / 100
		m3 = str(m3)
		(b, c) = map(str, m3.split('.'))
	if len(str(h3)) == 1:
		h3 = h3 / 100
		h3 = str(h3)
		(g, d) = map(str, h3.split('.'))
	if d == '0':
		print('0', d, ':', c, sep='')
	else:
		print(d, ':', c, sep='')
else:
	k = (h2 * 60 + m2 - (h1 * 60 + m1)) // 2
	h3 = k // 60 + h1
	m3 = (h2 * 60 + m2 - (h1 * 60 + m1)) // 2 - (h2 * 60 + m2 - (h1 * 60 + m1)) // 2 // 60 * 60 + m1
	if m3 >= 60:
		h3 += 1
		m3 -= 60
	d = h3
	c = m3
	if len(str(m3)) == 1:
		m3 = m3 / 100
		m3 = str(m3)
		(b, c) = map(str, m3.split('.'))
	if len(str(h3)) == 1:
		h3 = h3 / 100
		h3 = str(h3)
		(g, d) = map(str, h3.split('.'))
	if c == '0' and d == '0':
		print('0', d, ':', c, '0', sep='')
	if c == '0':
		print(d, ':', c, '0', sep='')
	elif d == '0':
		print('0', d, ':', c, sep='')
	else:
		print(d, ':', c, sep='')


(a, b) = map(int, input().split(':'))
(h, m) = map(int, input().split(':'))
x = a * 60 + b
y = h * 60 + +m
ans1 = str((x + y) // 2 // 60)
ans2 = str((x + y) // 2 % 60)
print('0' * (2 - len(ans1)) + ans1 + ':' + '0' * (2 - len(ans2)) + ans2)


start_time = [int(time) for time in input().split(':')]
end_time = [int(time) for time in input().split(':')]
(h1, m1) = (start_time[0], start_time[1])
(h2, m2) = (end_time[0], end_time[1])
h1_in_minutes = h1 * 60
h2_in_minutes = h2 * 60
half_time_in_minutes = h2_in_minutes + m2 - (h1_in_minutes + m1)
half_time = h1_in_minutes + m1 + half_time_in_minutes // 2
h3 = half_time // 60
m3 = half_time % 60
print('{:02d}:{:02d}'.format(h3, m3))


def main():
	inicio = list(input().split(':'))
	final = list(input().split(':'))
	horaR = int(final[0]) - int(inicio[0])
	minR = int(final[1]) - int(inicio[1])
	horaR = horaR * 60
	tiempoR = horaR + minR
	minutosN = int(tiempoR / 2)
	if minutosN < 60:
		minutosNuevos = int(inicio[1]) + minutosN
		if minutosNuevos < 60:
			if minutosNuevos < 10:
				resultado = inicio[0] + ':' + '0' + str(minutosNuevos)
				print(resultado)
			else:
				resultado = inicio[0] + ':' + str(minutosNuevos)
				print(resultado)
		else:
			horaN = int(minutosNuevos // 60)
			minNuevos = minutosNuevos % 60
			if minNuevos < 10:
				hora2 = int(inicio[0]) + horaN
				if hora2 < 10:
					hora2 = '0' + str(hora2)
					resultado = hora2 + ':' + '0' + str(minNuevos)
					print(resultado)
				else:
					resultado = str(hora2) + ':' + '0' + str(minNuevos)
					print(resultado)
			else:
				hora2 = int(inicio[0]) + horaN
				if hora2 < 10:
					resultado = '0' + str(hora2) + ':' + str(minNuevos)
					print(resultado)
				else:
					resultado = str(hora2) + ':' + str(minNuevos)
					print(resultado)
	else:
		horaN = int(minutosN // 60)
		minNuevos = minutosN % 60
		inicio[0] = int(inicio[0]) + horaN
		minF = int(inicio[1]) + minNuevos
		if minF < 60:
			if minF < 10:
				hora2 = inicio[0]
				if hora2 < 10:
					resultado = '0' + str(hora2) + ':' + '0' + str(minF)
					print(resultado)
				else:
					resultado = str(hora2) + ':' + '0' + str(minF)
					print(resultado)
			else:
				hora2 = inicio[0]
				if hora2 < 10:
					resultado = '0' + str(hora2) + ':' + str(minF)
					print(resultado)
				else:
					resultado = str(hora2) + ':' + str(minF)
					print(resultado)
		else:
			horaNu = int(minF // 60)
			minNuevos = minF % 60
			if minNuevos < 10:
				hora2 = int(inicio[0]) + horaNu
				if hora2 < 10:
					resultado = '0' + str(hora2) + ':' + '0' + str(minNuevos)
					print(resultado)
				else:
					resultado = str(hora2) + ':' + '0' + str(minNuevos)
					print(resultado)
			else:
				hora2 = int(inicio[0]) + horaNu
				if hora2 < 10:
					resultado = '0' + str(hora2) + ':' + str(minNuevos)
					print(resultado)
				else:
					resultado = str(hora2) + ':' + str(minNuevos)
					print(resultado)
main()


l1 = list(map(int, input().split(':')))
l2 = list(map(int, input().split(':')))
t = (l2[0] - l1[0]) * 60 + (l2[1] - l1[1])
t //= 2
h = t // 60
m = t % 60
l1[0] += h
l1[1] += m
l1[0] += l1[1] // 60
l1[1] = l1[1] % 60
l1 = list(map(str, l1))
for i in range(2):
	if len(l1[i]) < 2:
		print('0' + l1[i], end='')
	else:
		print(l1[i], end='')
	if i == 0:
		print(':', end='')


ss = input()
h1 = ss[:2]
m1 = ss[3:]
se = input()
h2 = se[:2]
m2 = se[3:]
time1 = int(h1) * 60 + int(m1)
time2 = int(h2) * 60 + int(m2)
mid = (time1 + time2) // 2
hrs = str(mid // 60)
left = str(mid - int(hrs) * 60)
if len(hrs) == 1:
	hrs = '0' + hrs
if len(left) == 1:
	left = '0' + left
print(':'.join([hrs, left]))


from sys import stdin, stdout
from collections import *
from math import ceil, floor, log
st = lambda : list(stdin.readline().strip())
li = lambda : list(map(int, stdin.readline().split()))
mp = lambda : map(int, stdin.readline().split())
inp = lambda : int(stdin.readline())
pr = lambda n: stdout.write(str(n) + '\n')
mod = 1000000007
INF = float('inf')

def solve():
	s = input().split(':')
	t = input().split(':')
	t1 = int(s[0]) * 60 + int(s[1])
	t2 = int(t[0]) * 60 + int(t[1])
	t3 = t1 + t2 >> 1
	(H, M) = (t3 // 60, t3 % 60)
	print(str(H).zfill(2) + ':' + str(M).zfill(2))
for _ in range(1):
	solve()


(hour, mi) = list(map(int, input().split(':')))
(h, m) = list(map(int, input().split(':')))
a = hour * 60 + mi
b = h * 60 + m
(c, d) = list(divmod((b - a) // 2 + mi, 60))
print(str(c + hour).zfill(2) + ':' + str(d).zfill(2))


s = input()
x = input()
h = (int(s[0]) * 10 + int(s[1])) * 60 + (int(s[3]) * 10 + int(s[4])) + ((int(x[0]) * 10 + int(x[1])) * 60 + (int(x[3]) * 10 + int(x[4])))
h //= 2
a = h // 60
b = h % 60
if a in range(0, 10):
	h = str()
	h = '0' + str(a)
else:
	h = str(a)
if b in range(0, 10):
	x = str()
	x = '0' + str(b)
else:
	x = str(b)
s = h + ':' + x
print(s)


R = lambda : map(int, input().split(':'))
(h, m) = R()
(g, n) = R()
t = 30 * (g + h) + (n + m) // 2
print(f'{t // 60:02}:{t % 60:02}')


start = input().split(':')
end = input().split(':')
mid_val = (60 * (int(start[0]) + int(end[0])) + (int(start[1]) + int(end[1]))) / 2
hour = int(mid_val / 60)
minute = int(mid_val - 60 * hour)
print(str(hour).zfill(2) + ':' + str(minute).zfill(2))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
m = (a * 60 + b + c * 60 + d) // 2
print(('0' + str(m // 60))[-2:], ('0' + str(m % 60))[-2:], sep=':')


s1 = input()
s2 = input()
h1 = int(s1[0] + s1[1])
h2 = int(s2[0] + s2[1])
m1 = int(s1[3] + s1[4])
m2 = int(s2[3] + s2[4])
s = (h1 * 60 + h2 * 60 + m1 + m2) / 2
n1 = s // 60
n2 = s % 60
n1 *= 1
n2 *= 1
s1 = str(n1)
s2 = str(n2)
if n1 // 10 == 0:
	s1 = '0' + s1
if n2 // 10 == 0:
	s2 = '0' + s2
print(s1[0] + s1[1] + ':' + s2[0] + s2[1])


s1 = input()
s2 = input()
h1 = int(s1[:2])
m1 = int(s1[3:])
h2 = int(s2[:2])
m2 = int(s2[3:])
m1 = 60 * h1 + m1
m2 = 60 * h2 + m2
m = (m1 + m2) // 2
s1 = str(m // 60)
if m // 60 % 10 == m // 60:
	s1 = '0' + s1
s2 = str(m % 60)
if m % 60 % 10 == m % 60:
	s2 = '0' + s2
print(s1, ':', s2, sep='')


t1 = input()
t2 = input()
li1 = [int(x) for x in t1.split(':')]
li2 = [int(x) for x in t2.split(':')]
tot_tim = li2[1] - li1[1] + (li2[0] - li1[0]) * 60
mid = tot_tim // 2
min = (li1[1] + mid % 60) % 60
hr = li1[0] + mid // 60 + (li1[1] + mid % 60) // 60
hr = hr % 24
hr_r = ''
if hr < 10:
	hr_r = '0' + str(hr)
else:
	hr_r = hr_r + str(hr)
mn_r = ''
if min < 10:
	mn_r = '0' + str(min)
else:
	mn_r = mn_r + str(min)
str = hr_r + ':' + mn_r
print(str)


a1 = input().split(':')
a2 = input().split(':')
h1 = int(a1[0])
h2 = int(a2[0])
m1 = int(a1[1])
m2 = int(a2[1])
min1 = h1 * 60 + m1
min2 = h2 * 60 + m2
minMid = (min2 - min1) / 2
hMid = minMid // 60
mMid = minMid - hMid * 60
hAns = h1 + hMid
mAns = m1 + mMid
if mAns >= 60:
	hAns = hAns + 1
	mAns = mAns - 60
hANS = int(hAns)
mANS = int(mAns)
if hANS < 10:
	hANS = '0' + str(hANS)
if mANS < 10:
	mANS = '0' + str(mANS)
print(str(hANS) + ':' + str(mANS))


n = input()
m = input()
q = int(n[:n.find(':')]) * 60 + int(n[n.find(':') + 1:])
q1 = int(m[:m.find(':')]) * 60 + int(m[m.find(':') + 1:])
res1 = str((q + q1) // 2 // 60)
res2 = str((q + q1) // 2 % 60)
if len(res1) == 1:
	res1 = '0' + res1
if len(res2) == 1:
	res2 = '0' + res2
print(res1 + ':' + res2)


a = input().split(':')
b = input().split(':')
aa = int(a[0]) * 60 + int(a[1])
bb = int(b[0]) * 60 + int(b[1])
c = (aa + bb) // 2
cr = c // 60
cr2 = c % 60
if cr <= 9:
	cr = '0' + str(cr)
if cr2 <= 9:
	cr2 = '0' + str(cr2)
s = str(cr) + ':' + str(cr2)
print(s)


def solve():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	h1 = h1 * 60 + m1
	h2 = h2 * 60 + m2
	h = (h1 + h2) // 2
	h3 = h // 60
	h %= 60
	m3 = h
	if h3 < 10:
		h3 = '0' + str(h3)
	else:
		h3 = str(h3)
	if m3 < 10:
		m3 = '0' + str(m3)
	else:
		m3 = str(m3)
	print(h3, ':', m3, sep='')
solve()


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
m1 += h1 * 60
m2 += h2 * 60
ans = (m1 + m2) // 2
if ans // 60 < 10:
	print(0, end='')
print(ans // 60, end='')
print(':', end='')
if ans % 60 < 10:
	print(0, end='')
print(ans % 60)


(s_h, s_m) = map(int, input().split(':'))
(e_h, e_m) = map(int, input().split(':'))
a = s_h * 60 + s_m
thing = (e_h * 60 + e_m - a >> 1) + a
print(f'{thing // 60:02d}:{thing % 60:02d}')


(h1, m1) = [int(s) for s in input().split(':')]
(h2, m2) = [int(s) for s in input().split(':')]
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
t3 = (t1 + t2) // 2
print('{:0>2d}'.format(t3 // 60), '{:0>2d}'.format(t3 % 60), sep=':')


(h1, m1) = [int(t) for t in input().split(':')]
(h2, m2) = [int(t) for t in input().split(':')]
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
tm = (t2 + t1) // 2
print(f"{str(tm // 60).rjust(2, '0')}:{str(tm % 60).rjust(2, '0')}")


a = input()
b = input()
if (int(a[0:2]) + int(b[0:2])) % 2:
	if 30 + (int(a[3:5]) + int(b[3:5])) // 2 >= 60:
		print('{:02d}:{:02d}'.format((int(a[0:2]) + int(b[0:2])) // 2 + 1, (int(a[3:5]) + int(b[3:5])) // 2 - 30))
	else:
		print('{:02d}:{:02d}'.format((int(a[0:2]) + int(b[0:2])) // 2, (int(a[3:5]) + int(b[3:5])) // 2 + 30))
else:
	print('{:02d}:{:02d}'.format((int(a[0:2]) + int(b[0:2])) // 2, (int(a[3:5]) + int(b[3:5])) // 2))


inicio_string = input()
fim_string = input()
h1 = int(inicio_string[0:2])
min1 = int(inicio_string[3:5])
h2 = int(fim_string[0:2])
min2 = int(fim_string[3:5])
x = (h2 - h1) * 60
y = x + abs(min2 - min1)
h3 = h1 + (y // 2 + min(min1, min2)) // 60
min3 = (y // 2 + min(min1, min2)) % 60
print('{0:02d}{1}{2:02d}'.format(h3, ':', min3))


from datetime import datetime
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = datetime(1, 1, 1, hour=h1, minute=m1)
t2 = datetime(1, 1, 1, hour=h2, minute=m2)
t3 = (t2 - t1) // 2
d = t1 + t3
print(d.strftime('%H:%M'))


x = list(input().split(':'))
y = list(input().split(':'))
x[0] = int(x[0])
y[0] = int(y[0])
x[1] = int(x[1])
y[1] = int(y[1])
a = y[0] - x[0]
b = y[1] - x[1]
b += a * 60
b //= 2
a = x[0]
if b >= 60:
	a += b // 60
	b %= 60
b += x[1]
if b >= 60:
	a += b // 60
	b %= 60
if b < 10:
	b = '0' + str(b)
if a < 10:
	a = '0' + str(a)
print(str(a) + ':' + str(b))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
print(*map(lambda x: ('', '0')[x <= 9] + str(x), divmod((h1 + h2) * 60 + m1 + m2 >> 1, 60)), sep=':')


def f(s):
	x = str(s)
	return '0' * (2 - len(x)) + x
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
s1 = h1 * 60 + m1
s2 = h2 * 60 + m2
s = (s1 + s2) // 2
r1 = s // 60
r2 = s % 60
print(f(r1) + ':' + f(r2))


inp1 = input()
inp2 = input()

def sliceinput(inp):
	sliced = inp.split(':')
	for i in range(0, 2):
		sliced[i] = int(sliced[i])
	return sliced
inp1 = sliceinput(inp1)
inp2 = sliceinput(inp2)
dif = [inp2[0] - inp1[0], inp2[1] - inp1[1]]
timegap = (dif[0] * 60 + dif[1]) // 2
result = [inp1[0] + timegap // 60, inp1[1] + timegap % 60]
if result[1] >= 60:
	result[0] = result[0] + 1
	result[1] = result[1] - 60
result[0] = str(result[0]).zfill(2)
result[1] = str(result[1]).zfill(2)
print('{0}:{1}'.format(result[0], result[1]))


(z, zz) = (input, lambda : list(map(int, z().split())))
zzz = lambda : [int(i) for i in stdin.readline().split()]
(szz, graph, mod, szzz) = (lambda : sorted(zz()), {}, 10 ** 9 + 7, lambda : sorted(zzz()))
from string import *
from re import *
from collections import *
from queue import *
from sys import *
from collections import *
from math import *
from heapq import *
from itertools import *
from bisect import *
from collections import Counter as cc
from math import factorial as f
from bisect import bisect as bs
from bisect import bisect_left as bsl
from itertools import accumulate as ac

def lcd(xnum1, xnum2):
	return xnum1 * xnum2 // gcd(xnum1, xnum2)

def prime(x):
	p = ceil(x ** 0.5) + 1
	for i in range(2, p):
		if x % i == 0 and x != 2 or x == 0:
			return 0
	return 1

def dfs(u, visit, graph):
	visit[u] = True
	for i in graph[u]:
		if not visit[i]:
			dfs(i, visit, graph)
(h1, m1) = map(int, z().split(':'))
(h2, m2) = map(int, z().split(':'))
h1 = h1 * 60 + m1
h2 = h2 * 60 + m2
total = h1 + h2
h = total // 2 // 60
m = total // 2 % 60
if h <= 9:
	h = '0' + str(h)
if m <= 9:
	m = '0' + str(m)
print(str(h) + ':' + str(m))


s1 = input()
s2 = input()
h1 = int(s1[0:2])
m1 = int(s1[3:])
h2 = int(s2[0:2])
m2 = int(s2[3:])
mins = (h2 - h1) * 60 + m2 - m1
mins //= 2
h3 = h1 + (m1 + mins) // 60
m3 = (m1 + mins) % 60
print('%02d:%02d' % (h3, m3))


i = [int(x) for x in input().split(':')]
f = [int(x) for x in input().split(':')]
t1 = i[0] * 60 + i[1]
f1 = f[0] * 60 + f[1]
tempo = (f1 - t1) / 2
horas = tempo // 60
minutos = tempo % 60
if minutos + i[1] >= 60:
	horas = horas + 1
saida1 = str(int(i[0] + horas))
saida1 = saida1 if len(saida1) > 1 else '0' + saida1
saida2 = str(int(i[1] + minutos) % 60)
saida2 = saida2 if len(saida2) > 1 else '0' + saida2
print(saida1, ':', saida2, sep='')


from math import *
s = list(map(int, input().split(':')))
e = list(map(int, input().split(':')))
s1 = s[0] + s[1] / 60
e1 = e[0] + e[1] / 60
es = (s1 + e1) / 2
q = floor(es)
if len(str(q)) == 1:
	print('0' + str(q), end='')
else:
	print(q, end='')
print(':', end='')
q = round((es - floor(es)) * 60)
if len(str(q)) == 1:
	print('0' + str(q), end='')
else:
	print(q, end='')


s = input()
b = input()
l = int(s[:2]) * 60 + int(s[3:])
r = int(b[:2]) * 60 + int(b[3:])
c = (l + r) // 2
print('0' * (2 - len(str(c // 60))) + str(c // 60) + ':' + '0' * (2 - len(str(c % 60))) + str(c % 60))


import os
(ih, im) = input().split(':')
(oh, om) = input().split(':')
total = (int(oh) - int(ih)) * 60 + int(om) - int(im)
total = total / 2 + int(im)
ansh = int(int(ih) + total // 60)
ansm = int(total % 60)
if ansh <= 9:
	ansh = '0' + str(ansh)
if ansm <= 9:
	ansm = '0' + str(ansm)
print(ansh, ansm, sep=':')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
a = (h2 * 60 + m2 + h1 * 60 + m1) // 2
print(str(a // 60).zfill(2), ':', str(a % 60).zfill(2), sep='')


s1 = input()
s2 = input()
h1 = int(s1[:2])
m1 = int(s1[3:])
h2 = int(s2[:2])
m2 = int(s2[3:])
ans = (h1 + h2) // 2
rem = (h1 + h2) % 2 * 60
m = (m1 + m2 + rem) // 2
if m > 59:
	m -= 60
	ans += 1
if ans > 9 and m > 9:
	print(str(ans) + ':' + str(m))
else:
	st1 = st2 = ''
	if ans < 10:
		st1 = '0' + str(ans)
	else:
		st1 = str(ans)
	if m < 10:
		st2 = '0' + str(m)
	else:
		st2 = str(m)
	print(st1 + ':' + st2)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
time_first = h1 * 60 + m1
time_second = h2 * 60 + m2
between_hour = round((time_second - time_first) / 2)
m1 = between_hour + m1
if m1 >= 60:
	rango = int(m1 / 60)
	m1 = abs(m1 - 60 * rango)
	for number in range(rango):
		h1 = h1 + 1
m1 = str(m1).zfill(2)
h1 = str(h1).zfill(2)
print('{}:{}'.format(h1, m1))


s = list(input().split(':'))
e = list(input().split(':'))
s[0] = int(s[0])
s[-1] = int(s[-1])
e[0] = int(e[0])
e[-1] = int(e[-1])
(a, b) = (0, 0)
mins = (e[0] - s[0]) * 60 // 2 + (e[-1] - s[-1]) // 2
a = s[0] + mins // 60
b = s[-1] + mins % 60
if b >= 60:
	b %= 60
	a += 1
if len(str(a)) == 1:
	a = '0' + str(a)
if len(str(b)) == 1:
	b = '0' + str(b)
print(a, ':', b, sep='')


array = []
h = 0
m = 0
for i in range(2):
	array.append(list(map(int, input().split(':'))))
h = (array[1][0] - array[0][0]) * 60
m = array[1][1] - array[0][1]
m = (m + h) / 2
h = int(array[0][0] + m // 60)
m = int(array[0][1] + m % 60)
if m >= 60:
	h += m // 60
	m %= 60
if len(str(h)) == 1:
	h = '0' + str(h)
if len(str(m)) == 1:
	m = '0' + str(m)
print(str(h) + ':' + str(m))


s = input()
t = input()
h = int(s[:2])
m = int(s[3:])
a = int(t[:2])
b = int(t[3:])
c = h * 60 + m
d = a * 60 + b
extra = abs(c - d) // 2
c += extra
(eh, em) = (c // 60, c % 60)
print((2 - len(str(eh))) * '0', eh, ':', (2 - len(str(em))) * '0', em, sep='')


import math

def conver_time(A, B):
	a = int(A[:2]) + int(A[-2:]) / 60
	b = int(B[:2]) + int(B[-2:]) / 60
	diff = b - a
	if diff < 0:
		diff = diff + 24
	c = a + diff / 2
	if c >= 24:
		c = c - 24
	return (math.floor(c), round((c - math.floor(c)) * 60))

def process(A, B):
	(a, b) = conver_time(A, B)
	if a < 10:
		a = '0' + str(a)
	else:
		a = str(a)
	if b < 10:
		b = '0' + str(b)
	else:
		b = str(b)
	return a + ':' + b
A = input()
B = input()
print(process(A, B))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t = h1 * 60 + h2 * 60 + m1 + m2
t //= 2
h = t // 60
m = t % 60
s = ''
if h < 10:
	s = '0' + str(h) + ':'
else:
	s = str(h) + ':'
if m < 10:
	s = s + '0' + str(m)
else:
	s = s + str(m)
print(s)


def main():
	n1 = input().split(':')
	n2 = input().split(':')
	n1_h = int(n1[0])
	n1_m = int(n1[1])
	n2_h = int(n2[0])
	n2_m = int(n2[1])
	x = (n2_h * 60 + n2_m - n1_h * 60 - n1_m) // 2
	n1_m += x
	if n1_m > 59:
		n1_h = n1_h + n1_m // 60
		n1_m = n1_m % 60
	if n1_h < 10:
		print('0', end='')
		print(n1_h, end='')
		print(':', end='')
		if n1_m < 10:
			print('0', end='')
			print(n1_m, end='')
		else:
			print(n1_m, end='')
	else:
		print(n1_h, end='')
		print(':', end='')
		if n1_m < 10:
			print('0', end='')
			print(n1_m, end='')
		else:
			print(n1_m, end='')
main()


l1 = input().split(':')
l2 = input().split(':')
m1 = int(l1[0]) * 60 + int(l1[1])
m2 = int(l2[0]) * 60 + int(l2[1])
med = (m1 + m2) // 2
h = str(med // 60)
mins = str(med % 60)
if len(h) != 2:
	h = '0' + h
if len(mins) != 2:
	mins = '0' + mins
print(h, ':', mins, sep='')


l1 = input()
h1 = int(l1[0:2])
m1 = int(l1[3:5])
l1 = input()
h2 = int(l1[0:2])
m2 = int(l1[3:5])
total = int(((h1 + h2) * 60 + m1 + m2) / 2)
hf = total // 60
mf = total % 60
if hf < 10:
	hf = '0' + str(hf)
if mf < 10:
	mf = '0' + str(mf)
print(str(hf) + ':' + str(mf))


from sys import stdin, stdout

def inp():
	return int(stdin.readline())

def minp():
	return map(int, stdin.readline().rstrip().split(':'))

def linp():
	return list(minp())

def main():
	(h1, m1) = minp()
	(h2, m2) = minp()
	hh = h1
	s = ''
	if h1 != h2:
		dm = (h2 - h1 - 1) * 60 + 60 - m1 + m2
		mm = int(dm / 2)
		hh += int(mm / 60)
		md = mm % 60
		if md < 60 - m1:
			if hh < 10:
				dkk = '0' + str(hh)
			else:
				dkk = str(hh)
			if m1 + md < 10:
				bkk = '0' + str(m1 + md)
			else:
				bkk = str(m1 + md)
			s += dkk + ':' + bkk
		else:
			md -= 60 - m1
			if hh + 1 < 10:
				dkk = '0' + str(hh + 1)
			else:
				dkk = str(hh + 1)
			if md < 10:
				bkk = '0' + str(md)
			else:
				bkk = str(md)
			s += dkk + ':' + bkk
	else:
		if hh < 10:
			dkk = '0' + str(hh)
		else:
			dkk = str(hh)
		if int((m1 + m2) / 2) < 10:
			bkk = '0' + str(int((m1 + m2) / 2))
		else:
			bkk = str(int((m1 + m2) / 2))
		s += dkk + ':' + bkk
	print(s)
main()


s1 = input()
(h1, m1) = (int(s1[:2]), int(s1[3:]))
s2 = input()
(h2, m2) = (int(s2[:2]), int(s2[3:]))
initial = h1 * 60 + m1
diff = (h2 * 60 + m2 - initial) / 2
ans = initial + diff
ans_h = int(ans // 60)
ans_m = int(ans % 60)
if ans_h > 9 and ans_m > 9:
	print('{}:{}'.format(ans_h, ans_m))
elif ans_h < 10 and ans_m < 10:
	print('0{}:0{}'.format(ans_h, ans_m))
elif ans_h > 9 and ans_m < 10:
	print('{}:0{}'.format(ans_h, ans_m))
else:
	print('0{}:{}'.format(ans_h, ans_m))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
delta = (t2 - t1) // 2
t1_f = t1 + delta
h1_f = t1_f // 60
m1_f = t1_f % 60
print('{:02d}:{:02d}'.format(h1_f, m1_f))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
mm1 = h1 * 60 + m1
mm2 = h2 * 60 + m2
mm3 = (mm1 + mm2) // 2
print('%02d:%02d' % (mm3 // 60, mm3 % 60))


first = input().split(':')
second = input().split(':')
sH = int(second[0]) + int(first[0])
sS = int(second[1]) + int(first[1])
if sS >= 60:
	sH += 1
	sS -= 60
if sH % 2 != 0:
	sH /= 2
	sS /= 2
	sS += 30
else:
	sH /= 2
	sS /= 2
res = ''
if sH < 10:
	res += '0' + str(int(sH)) + ':'
else:
	res += str(int(sH)) + ':'
if sS < 10:
	res += '0' + str(int(sS))
else:
	res += str(int(sS))
print(res)


a = input().split(':')
b = input().split(':')
val = (int(a[0]) + int(b[0])) / 2
var = val - int(val)
temp = (int(a[1]) + int(b[1])) / 2
y = var * 60 + temp
val += y // 60
y = y % 60
if y < 10:
	y = '0' + str(y)
	if len(str(int(val))) < 2:
		val = '0' + str(int(val))
		print(val, end='')
	else:
		print(int(val), end='')
	print(':', end='')
	print(y[0:2])
else:
	if len(str(int(val))) < 2:
		val = '0' + str(int(val))
		print(val, end='')
	else:
		print(int(val), end='')
	print(':', end='')
	print(int(y), end='')


import copy

class Time:
	__slots__ = ['hour', 'minutes']

	def __init__(self, string):
		(self.hour, self.minutes) = (int(tok) for tok in string.split(':'))

	def __str__(self):
		hour = ('0' if self.hour < 10 else '') + str(self.hour)
		minutes = ('0' if self.minutes < 10 else '') + str(self.minutes)
		return hour + ':' + minutes

	def __eq__(self, other):
		return self.hour == other.hour and self.minutes == other.minutes

	def advance(self):
		self.minutes += 1
		if self.minutes >= 60:
			self.hour += 1
			self.minutes = 0

def main():
	start = Time(input())
	end = Time(input())
	time1 = copy.copy(start)
	time2 = copy.copy(start)
	while time2 != end:
		time1.advance()
		time2.advance()
		time2.advance()
	print(time1)
main()


(hour1, minute1) = input().strip().split(':')
(hour2, minute2) = input().strip().split(':')
hour1 = int(hour1)
hour2 = int(hour2)
minute1 = int(minute1)
minute2 = int(minute2)
total = 60 * (hour1 + hour2) + minute1 + minute2
middle = total / 2
print('%02d:%02d' % (int(middle // 60), int(middle % 60)))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
s = (h1 + h2) * 60 + m1 + m2
s //= 2
(h, m) = (s // 60, s % 60)
print('%02d' % h, '%02d' % m, sep=':')


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
t = (a[0] * 60 + b[0] * 60 + a[1] + b[1]) // 2
print(str(t // 60).zfill(2) + ':' + str(t % 60).zfill(2))


(sh, sm) = input().split(':')
(eh, em) = input().split(':')
end = int(eh) * 60 + int(em)
start = int(sh) * 60 + int(sm)
ans = (start + end) // 2
print('{:02d}:{:02d}'.format(ans // 60, ans % 60))


time1 = str(input())
time2 = str(input())
hh1 = int(time1[:2])
mm1 = int(time1[3:])
s1 = hh1 * 3600 + mm1 * 60
hh2 = int(time2[:2])
mm2 = int(time2[3:])
s2 = hh2 * 3600 + mm2 * 60
for h in range(0, 24):
	for m in range(0, 60):
		cur = h * 3600 + m * 60
		if cur - s1 == s2 - cur:
			h = str(h)
			m = str(m)
			if len(h) != 2:
				h = '0' + h
			if len(m) != 2:
				m = '0' + m
			print(str(h) + ':' + str(m))
			exit()


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
t = a[0] * 60 + a[1] + b[0] * 60 + b[1]
t //= 2

def f(n):
	if n < 10:
		return '0' + str(n)
	return str(n)
print(f(t // 60) + ':' + f(t % 60))


from sys import stdin
st = stdin.readline()
end = stdin.readline()
h = 60 * int(st[:2])
m = int(st[3:])
t = h + m
h_two = 60 * int(end[:2])
m_two = int(end[3:])
t_two = h_two + m_two
half_t_mid = (t_two - t) / 2
t_mid = t + half_t_mid
h_new = int(t_mid / 60)
m_new = int(t_mid - 60 * h_new)
sh = str(h_new)
sm = str(m_new)
if h_new < 10:
	sh = '0' + sh
if m_new < 10:
	sm = '0' + sm
print(sh + ':' + sm)


def convertToMin(h, m):
	return h * 60 + m
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
start = convertToMin(h1, m1)
end = convertToMin(h2, m2)
middle = int((end - start) / 2)
midpoint = start + middle
midpoint_hrs = int(midpoint / 60)
midpoint_mins = midpoint % 60
result_str = ''
if len(str(midpoint_hrs)) == 1:
	result_str += '0' + str(midpoint_hrs)
else:
	result_str += str(midpoint_hrs)
result_str += ':'
if len(str(midpoint_mins)) == 1:
	result_str += '0' + str(midpoint_mins)
else:
	result_str += str(midpoint_mins)
print(result_str)


start = [int(i) for i in input().split(':')]
end = [int(i) for i in input().split(':')]
h = end[0] - start[0]
m = end[1] - start[1]
temp = (h * 60 + m) // 2
ans = [start[0] + temp // 60, start[1] + temp % 60]
if ans[1] > 59:
	ans[0] += 1
	ans[1] = ans[1] % 60
ans[0] = str(ans[0])
ans[1] = str(ans[1])
if len(ans[0]) < 2:
	ans[0] = '0' + ans[0]
if len(ans[1]) < 2:
	ans[1] = '0' + ans[1]
print(ans[0] + ':' + ans[1])


(h1, m1) = map(int, input().strip().split(':'))
(h2, m2) = map(int, input().strip().split(':'))
dif = (h2 * 60 + m1 + (h1 * 60 + m2)) // 2
h1 = dif // 60
m1 = dif % 60
if h1 < 10:
	h1 = '0' + str(h1)
if m1 < 10:
	m1 = '0' + str(m1)
print(h1, m1, sep=':')


(s_h, s_m) = map(int, input().split(':'))
(e_h, e_m) = map(int, input().split(':'))
thing = (e_h * 60 + e_m - s_h * 60 - s_m) // 2 + s_h * 60 + s_m
print(f'{thing // 60:02d}:{thing % 60:02d}')


s1 = input()
s2 = input()
h1 = int(s1[:2])
h2 = int(s2[:2])
m1 = int(s1[3:])
m2 = int(s2[3:])
hours = h2 - h1
minutes = m2 - m1
time = hours * 60 + minutes
t = time // 2
arr = [int(s1[0]), int(s1[1]), int(s1[3]), int(s1[4])]
while t != 0:
	arr[3] += 1
	if arr[3] == 10:
		arr[3] = 0
		arr[2] += 1
	if arr[2] == 6:
		arr[2] = 0
		arr[1] += 1
	if arr[1] == 10:
		arr[1] = 0
		arr[0] += 1
	t -= 1
print(str(arr[0]) + str(arr[1]) + ':' + str(arr[2]) + str(arr[3]))


a = input()
b = input()
h1 = int(a[0]) * 10 + int(a[1])
m1 = int(a[3]) * 10 + int(a[4])
h2 = int(b[0]) * 10 + int(b[1])
m2 = int(b[3]) * 10 + int(b[4])
ans = ((h2 - h1) * 60 + (m2 - m1)) // 2
ansh = h1 + ans // 60
ansm = m1 + (ans - ans // 60 * 60)
ansh += ansm // 60
ansm -= ansm // 60 * 60
if ansh == 0:
	print('00', end='')
elif ansh < 10:
	print('0', end='')
	print(ansh, end='')
else:
	print(ansh, end='')
print(':', end='')
if ansm == 0:
	print('00', end='')
elif ansm < 10:
	print('0', end='')
	print(ansm, end='')
else:
	print(ansm, end='')


(h1, m1) = map(int, input().strip().split(':'))
(h2, m2) = map(int, input().strip().split(':'))
duration = h2 * 60 + m2 - h1 * 60 - m1
duration = duration // 2
hours = duration // 60
result_h = h1 + hours
result_m = m1 + duration - hours * 60
result_m = int(result_m)
if result_m >= 60:
	result_m -= 60
	result_h += 1
output_h = ''
output_m = ''
if result_h < 10:
	output_h = '0' + str(result_h)
else:
	output_h = str(result_h)
if result_m < 10:
	output_m = '0' + str(result_m)
else:
	output_m = str(result_m)
print(output_h + ':' + output_m)


h1m1 = input().split(':')
h2m2 = input().split(':')
m1 = int(h1m1[0]) * 60 + int(h1m1[1])
m2 = int(h2m2[0]) * 60 + int(h2m2[1])
dif = (m2 + m1) // 2
print(str(dif // 60).zfill(2) + ':' + str(dif % 60).zfill(2))


(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
hd = h2 - h1
md = m2 - m1
mt = (hd * 60 + md) // 2
half_hours = mt // 60
half_minutes = mt - half_hours * 60
hours_from_start = h1 + half_hours
minutes_from_start = m1 + half_minutes
hours_from_start = hours_from_start + 1 if minutes_from_start // 60 else hours_from_start
minutes_from_start = minutes_from_start % 60
print('{}:{}'.format(str(hours_from_start).zfill(2), str(minutes_from_start).zfill(2)))


t1 = list(map(int, input().split(':')))
t2 = list(map(int, input().split(':')))
mins1 = 60 * t1[0] + t1[1]
mins2 = 60 * t2[0] + t2[1]
mins = (mins1 + mins2) / 2
hours = 0
while mins >= 60:
	mins -= 60
	hours += 1
hours = int(hours)
mins = int(mins)
hours = str(hours) if hours >= 10 else '0' + str(hours)
mins = str(mins) if mins >= 10 else '0' + str(mins)
print(hours + ':' + mins)


import datetime
t1 = input()
t2 = input()
T1 = datetime.datetime(100, 1, 1, int(t1[:2]), int(t1[3:]))
T2 = datetime.datetime(100, 1, 1, int(t2[:2]), int(t2[3:]))
timedelta = T2 - T1
print((T1 + timedelta / 2).strftime('%H:%M'))


(sh, sm) = map(int, input().split(':'))
(fh, fm) = map(int, input().split(':'))
mtm = sm + ((fh - sh) * 60 + fm - sm) // 2
h = str(sh + mtm // 60)
if len(h) == 1:
	h = '0' + h
m = str(mtm % 60)
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


a = input()
b = input()
c1 = (a[0], a[1])
c1 = ''.join(c1)
c1 = int(c1)
c2 = (a[3], a[4])
c2 = ''.join(c2)
c2 = int(c2)
d1 = (b[0], b[1])
d1 = ''.join(d1)
d1 = int(d1)
d2 = (b[3], b[4])
d2 = ''.join(d2)
d2 = int(d2)
t1 = c1 * 60 + c2
t2 = d1 * 60 + d2
t3 = (t1 + t2) / 2
f1 = int(t3 / 60)
t4 = int(t3 - f1 * 60)
f1 = str(f1)
t4 = str(t4)
if len(f1) == 1 and len(t4) == 1:
	print('0', end='')
	print(f1, end='')
	print(':', end='')
	print('0', end='')
	print(t4)
elif len(f1) == 1:
	print('0', end='')
	print(f1, end='')
	print(':', end='')
	print(t4)
elif len(t4) == 1:
	print(f1, end='')
	print(':', end='')
	print('0', end='')
	print(t4)
else:
	print(f1, end='')
	print(':', end='')
	print(t4)


(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
timer = (time2 + time1) // 2
h3 = str(timer // 60)
m3 = str(timer % 60)
if len(h3) < 2:
	h3 = '0' + h3
if len(m3) < 2:
	m3 = '0' + m3
print(h3, ':', m3, sep='')


import datetime
a = input()
b = input()
a = datetime.datetime.strptime(a, '%H:%M')
b = datetime.datetime.strptime(b, '%H:%M')
d = (b - a).seconds // 60 // 2
a = a + datetime.timedelta(minutes=d)
print(a.strftime('%H:%M'))


a = input()
b = input()
a1 = 0
a2 = 0
b1 = 0
a1 = 0
a1 = int(a[0:2])
a2 = int(a[3:5])
b1 = int(b[0:2])
b2 = int(b[3:5])
c1 = a1 * 60 + a2
c2 = b1 * 60 + b2
c3 = (c1 + c2) / 2
c4 = int(c3 // 60)
c5 = int(c3 % 60)
if c4 < 10:
	c4 = str(0) + str(c4)
if c5 < 10:
	c5 = str(0) + str(c5)
print(c4, ':', c5, sep='')


def main():
	s1 = input().split(':')
	s2 = input().split(':')
	(h1, h2) = (int(s1[0]), int(s2[0]))
	(m1, m2) = (int(s1[1]), int(s2[1]))
	z = 0
	if (h1 + h2) % 2 != 0:
		z = 1
	h = (h1 + h2) // 2
	m = (m1 + m2) // 2
	if z == 1:
		m += 30
	if m >= 60:
		m = m % 60
		h += 1
	if h >= 24:
		h = h % 24
	if m < 10:
		m = '0' + str(m)
	if h < 10:
		h = '0' + str(h)
	print(h, m, sep=':')
main()


t1 = input()
t2 = input()
(h1, m1) = [int(x) for x in t1.split(':')]
(h2, m2) = [int(x) for x in t2.split(':')]
hour_diff = h2 - h1
min_diff = m2 - m1
a = int((60 * hour_diff + m2 - m1) / 2)
if m1 + a >= 60:
	p = (m1 + a) % 60
	p = str(p)
	h1 += int((m1 + a) / 60)
	h1 = str(h1)
	h1 = h1.zfill(2)
	print('{}:{}'.format(h1, p.zfill(2)))
else:
	p = m1 + a
	p = str(p)
	h1 = str(h1)
	h1 = h1.zfill(2)
	print('{}:{}'.format(h1, p.zfill(2)))


a = tuple(map(int, input().split(':')))
b = tuple(map(int, input().split(':')))
t = (a[0] * 60 + a[1] + b[0] * 60 + b[1]) // 2
a = str(t // 60)
b = str(t % 60)
if len(a) == 1:
	a = '0' + a
if len(b) == 1:
	b = '0' + b
print(a + ':' + b)


s = input()
a = int(s[:2])
b = int(s[3:5])
s2 = input()
c = int(s2[:2])
d = int(s2[3:5])
e = (a * 60 + b + d + c * 60) // 2
f = str(e % 60)
if len(f) == 1:
	f = '0' + f
g = str(e // 60)
if len(g) == 1:
	g = '0' + g
print(g + ':' + f)


startTime = input()
endTime = input()
startTime = startTime.split(':')
endTime = endTime.split(':')
startTime = [int(i) for i in startTime]
endTime = [int(i) for i in endTime]
middleTime = [(startTime[i] + endTime[i]) / 2 for i in range(2)]
if (startTime[0] + endTime[0]) % 2 != 0:
	middleTime[0] = int(middleTime[0])
	middleTime[1] = int(middleTime[1]) + 30
	if middleTime[1] >= 60:
		middleTime[1] -= 60
		middleTime[0] += 1
else:
	middleTime[0] = int(middleTime[0])
	middleTime[1] = int(middleTime[1])
middleTime = [str(i).zfill(2) for i in middleTime]
print(middleTime[0] + ':' + middleTime[1])


a = input()
b = input()
x = abs(int(b[:2]) - int(a[:2])) * 60
x += int(b[3:]) - int(a[3:])
x = x // 2
y = x % 60
x = x // 60
z = int(a[3:]) + y
if z >= 60:
	x += (int(a[3:]) + y) // 60
	z = z % 60
if int(a[:2]) + x < 10:
	print('0' + str(int(a[:2]) + x), end=':')
else:
	print(str(int(a[:2]) + x), end=':')
if z < 10:
	print('0' + str(z))
else:
	print(str(z))


from sys import stdin, stdout
(h1, m1) = [int(x) for x in stdin.readline().rstrip().split(':')]
(h2, m2) = [int(x) for x in stdin.readline().rstrip().split(':')]
min1 = 60 * h1 + m1
min2 = 60 * h2 + m2
minm = (min1 + min2) // 2
hm = minm // 60
mm = minm % 60
print('%02d:%02d' % (hm, mm))


(a, b) = (int(i) for i in input().split(':'))
(c, d) = (int(i) for i in input().split(':'))
(h1, h2) = (a * 60 + b, c * 60 + d)
m = (h1 + h2) // 2
h = str(m // 60) if m // 60 > 9 else '0' + str(m // 60)
m = str(m % 60) if m % 60 > 9 else '0' + str(m % 60)
print(h + ':' + m)


a = [int(k) for k in input().split(':')]
b = [int(k) for k in input().split(':')]
c = (a[0] * 60 + b[0] * 60 + a[1] + b[1]) // 2
s2 = str(c % 60)
if len(s2) == 1:
	s2 = '0' + s2
s1 = str(c // 60)
if len(s1) == 1:
	s1 = '0' + s1
print(':'.join([s1, s2]))


from datetime import datetime
a = input()
b = input()
a = a + ':00'
b = b + ':00'
FMT = '%H:%M:%S'
delta = datetime.strptime(b, FMT) - datetime.strptime(a, FMT)
half = datetime.strptime(a, FMT) + delta / 2
st = str(datetime.time(half))
print(st[0:5])


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
dif = 60 * (h2 - h1) + m2 - m1
dif = dif // 2
h1 += (m1 + dif) // 60
m1 = (m1 + dif) % 60
h1 = str(h1)
m1 = str(m1)
if len(h1) < 2:
	h1 = '0' + str(h1)
if len(m1) < 2:
	m1 = '0' + str(m1)
print(h1 + ':' + m1)


start = input().split(':')
stHour = int(start[0])
stMin = int(start[1])
end = input().split(':')
endHour = int(end[0])
endMin = int(end[1])
middle = (stHour * 60 + stMin + (endHour * 60 + endMin)) / 2
middleHour = middle // 60
middleMin = middle % 60
output = ''
if middleHour < 10:
	output += '0'
output += str(int(middleHour)) + ':'
if middleMin < 10:
	output += '0'
output += str(int(middleMin))
print(output)


mi = lambda : [int(i) for i in input().split(':')]
(h1, m1) = mi()
(h2, m2) = mi()

def pn(x):
	if x <= 9:
		return '0' + str(x)
	return str(x)
m = (h1 + h2) % 2 * 30 + (m1 + m2) // 2
print(pn((h1 + h2) // 2 + m // 60) + ':' + pn(m % 60))


def hour_to_min(hour, mins):
	return hour * 60 + mins

def min_to_hour(mins):
	return (str(mins // 60) if mins // 60 > 9 else '0' + str(mins // 60)) + ':' + (str(mins % 60) if mins % 60 > 9 else '0' + str(mins % 60))
(first_hour, first_min) = map(int, input().strip().split(':'))
(second_hour, second_min) = map(int, input().strip().split(':'))
print(min_to_hour((hour_to_min(first_hour, first_min) + hour_to_min(second_hour, second_min)) // 2))


s1 = input()
s2 = input()
x = int(s1[0:2]) * 60 + int(s1[3:])
y = int(s2[0:2]) * 60 + int(s2[3:])
z = (x + y) // 2
if z < 600:
	if z % 60 < 10:
		print('0' + str(z // 60) + ':0' + str(z % 60))
	else:
		print('0' + str(z // 60) + ':' + str(z % 60))
elif z % 60 < 10:
	print(str(z // 60) + ':0' + str(z % 60))
else:
	print(str(z // 60) + ':' + str(z % 60))


import math
(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
m = (h1 * 60 + m1 + h2 * 60 + m2) // 2
print('%02d:%02d' % (m // 60 % 24, m - 60 * (m // 60)))


(h, m) = input().split(':')
(hl, ml) = input().split(':')
if h[0] == '0':
	h = int(h[1])
else:
	h = int(h)
if m[0] == '0':
	m = int(m[1])
else:
	m = int(m)
if hl[0] == '0':
	hl = int(hl[1])
else:
	hl = int(hl)
if ml[0] == '0':
	ml = int(ml[1])
else:
	ml = int(ml)
ho = h
mo = m
raz = ((hl - h) * 60 - m + ml) // 2
dobc = raz // 60
dobm = raz % 60
ho += dobc
x = 60 - mo
if dobm >= x:
	ho += 1
	mo = dobm - x
else:
	mo += dobm
if ho < 10:
	ho = '0' + str(ho)
if mo < 10:
	mo = '0' + str(mo)
print(str(ho) + ':' + str(mo))


from datetime import datetime
x = input()
y = input()
FMT = '%H:%M'
tdelta = (datetime.strptime(y, FMT) - datetime.strptime(x, FMT)) / 2
test = datetime.strptime(x, FMT) + tdelta
print(test.strftime('%H:%M'))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
mm1 = h1 * 60 + m1
mm2 = h2 * 60 + m2
mm3 = (mm1 + mm2) // 2
print(f'{mm3 // 60 // 10}{mm3 // 60 % 10}:{mm3 % 60 // 10}{mm3 % 60 % 10}')


start = list(map(int, input().split(':')))
finish = list(map(int, input().split(':')))
startS = start[0] * 60 + start[1]
finishS = finish[0] * 60 + finish[1]
diffS = finishS - startS
mid = diffS / 2 + startS
print('{:0>2d}:{:0>2d}'.format(int(mid / 60), int(mid % 60)))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
hdif = h2 - h1
mdif = m2 - m1
tdif = hdif * 60 + mdif
tdif //= 2
hrs = tdif // 60
mins = tdif % 60
h1 += hrs
m1 += mins
if m1 >= 60:
	m1 -= 60
	h1 += 1
print('%02d:%02d' % (h1, m1))


import sys

def sec_convert(h, m):
	return 3600 * h + 60 * m

def get_time(s):
	h = s // 3600
	s %= 3600
	m = s // 60
	return (h, m)
(h1, m1) = map(int, sys.stdin.readline().split(':'))
(h2, m2) = map(int, sys.stdin.readline().split(':'))
a = sec_convert(h1, m1)
b = sec_convert(h2, m2)
(h, m) = get_time((a + b) // 2)
print(str(h).zfill(2) + ':' + str(m).zfill(2))


start = input().split(':')
end = input().split(':')
if start[0][0] == '0':
	start[0] = int(start[0][1])
else:
	start[0] = int(start[0])
if end[0][0] == '0':
	end[0] = int(end[0][1])
else:
	end[0] = int(end[0])
if start[1][0] == '0':
	start[1] = int(start[1][1])
else:
	start[1] = int(start[1])
if end[1][0] == '0':
	end[1] = int(end[1][1])
else:
	end[1] = int(end[1])
time = start[0] * 60 + start[1]
time2 = end[0] * 60 + end[1]
timer = time + (time2 - time) // 2
if timer // 60 < 10:
	hour = '0' + str(timer // 60)
else:
	hour = str(timer // 60)
if timer % 60 < 10:
	minute = '0' + str(timer % 60)
else:
	minute = str(timer % 60)
print(hour, ':', minute, sep='')


start = input().split(':')
stop = input().split(':')
startMin = 60 * int(start[0]) + int(start[1])
stopMin = 60 * int(stop[0]) + int(stop[1])
addMin = (stopMin - startMin) / 2
ansMin = startMin + addMin
Hours = str(int(ansMin // 60))
mins = str(int(ansMin % 60))
if len(Hours) == 1:
	Hours = '0' + Hours
if len(mins) == 1:
	mins = '0' + mins
print(Hours + ':' + mins)


s = input()
l = input()
n = 60 * int(s[0:2])
m = int(s[3:])
n1 = 60 * int(l[0:2])
m1 = int(l[3:])
x = abs(n + m - n1 - m1) // 2
x = (n + m + n1 + m1) // 2
h = x // 60
i = x % 60
print('{:02d}'.format(h) + ':' + '{:02d}'.format(i))


((h1, m1), (h2, m2)) = (map(int, input().split(':')), map(int, input().split(':')))
(m_1, m_2) = (h1 * 60 + m1, h2 * 60 + m2)
m = (m_1 + m_2) // 2
(h, m) = (str(m // 60), str(m % 60))
print('0' * (2 - len(h)) + h, '0' * (2 - len(m)) + m, sep=':')


a = [int(x) for x in input().split(':')]
b = [int(x) for x in input().split(':')]
h1 = a[0] * 60
h2 = b[0] * 60
m1 = a[1]
m2 = b[1]
tot = (h1 + m1 + (h2 + m2)) // 2
print('{}:{}'.format(str(tot // 60).zfill(2), str(tot % 60).zfill(2)))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if h2 < h1:
	h2 += 24
t = (h2 - h1) * 60 + m2 - m1
t /= 2
m1 += t
if m1 >= 60:
	h1 += m1 / 60
	m1 %= 60
if h1 >= 24:
	h1 -= 24
m1 = int(m1)
h1 = int(h1)
h1 = str(h1)
m1 = str(m1)
if len(m1) == 1:
	m1 = '0' + m1
if len(h1) == 1:
	h1 = '0' + h1
ans = str(h1) + ':' + str(m1)
print(ans)


def main():
	f = list(map(int, input().split(':')))
	fm = f[0] * 60 + f[1]
	s = list(map(int, input().split(':')))
	sm = s[0] * 60 + s[1]
	r = int((fm + sm) / 2)
	h = r // 60
	m = r % 60
	if h < 10:
		h = '0' + str(h)
	if m < 10:
		m = '0' + str(m)
	print('{}:{}'.format(h, m))
main()


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
s1 = h1 * 3600 + m1 * 60
s2 = h2 * 3600 + m2 * 60
s3 = (s2 + s1) // 2
h3 = s3 // 3600
m3 = s3 % 3600 // 60
print('{}:{}'.format(str(h3).rjust(2, '0'), str(m3).rjust(2, '0')))


(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
m = (h2 * 60 + m2 - h1 * 60 - m1) // 2
t1 = h1 + (m1 + m) // 60
t2 = (m1 + m) % 60
s1 = str(t1) if t1 >= 10 else '0' + str(t1)
s2 = str(t2) if t2 >= 10 else '0' + str(t2)
print(s1 + ':' + s2)


first = input()
second = input()
h1 = int(first[0:2])
m1 = int(first[3:5])
h2 = int(second[0:2])
m2 = int(second[3:5])
mid = (h1 * 60 + m1 + h2 * 60 + m2) // 2
h3 = mid // 60
m3 = mid % 60
if h3 // 10 == 0:
	print('0', h3, sep='', end='')
else:
	print(h3, end='')
if m3 // 10 == 0:
	print(':', '0', m3, sep='', end=' ')
else:
	print(':', m3, sep='', end=' ')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
if t2 < t1:
	t2 += 1440
t3 = (t1 + t2) // 2
answer = str(t3 // 60) if len(str(t3 // 60)) == 2 else '0' + str(t3 // 60)
answer += ':'
answer += str(t3 % 60 // 1) if len(str(t3 % 60 // 1)) == 2 else '0' + str(t3 % 60 // 1)
print(answer)


miu = input().split(':')
sella = input().split(':')
miuT = int(miu[0]) * 60 + int(miu[1])
sellaT = int(sella[0]) * 60 + int(sella[1])
delphineT = miuT + (sellaT - miuT) / 2
delphine = str(int(delphineT / 60)).zfill(2) + ':' + str(int(delphineT % 60)).zfill(2)
print(delphine)


time1 = input()
time2 = input()
(hh1, mm1) = (int(time1[0:2]), int(time1[3:5]))
(hh2, mm2) = (int(time2[0:2]), int(time2[3:5]))
sum = mm1 + mm2 + hh1 * 60 + hh2 * 60
print('%02d:%02d' % (sum / 2 // 60, sum / 2 % 60))


from collections import deque, Counter, OrderedDict
from heapq import nsmallest, nlargest
from math import ceil, floor, log, log2, sqrt, gcd, factorial, pow, pi

def binNumber(n, size=4):
	return bin(n)[2:].zfill(size)

def iar():
	return list(map(int, input().split()))

def ini():
	return int(input())

def isp():
	return map(int, input().split())

def sti():
	return str(input())

def par(a):
	print(' '.join(list(map(str, a))))

def tdl(outerListSize, innerListSize, defaultValue=0):
	return [[defaultValue] * innerListSize for i in range(outerListSize)]

def sts(s):
	s = list(s)
	s.sort()
	return ''.join(s)

class pair:

	def __init__(self, f, s):
		self.fi = f
		self.se = s

	def __lt__(self, other):
		return (self.fi, self.se) < (other.fi, other.se)
s1 = sti()
s2 = sti()
h1 = int(s1[:2])
h2 = int(s2[:2])
m1 = int(s1[3:])
m2 = int(s2[3:])
if h2 == 0:
	if h1 != 0:
		h2 = 24
h3 = (h1 + h2) // 2
h2 = (h1 + h2) % 2
x = -1
if h2 == 1:
	x = 30
else:
	x = 0
m = (m1 + m2) // 2 + x
if m >= 60:
	h3 += 1
	m -= 60
h = str(h3).zfill(2)
m = ':' + str(m).zfill(2)
print(h + m)


s1 = input()
h1 = int(s1[0] + s1[1])
m1 = int(s1[3] + s1[4])
s2 = input()
h2 = int(s2[0] + s2[1])
m2 = int(s2[3] + s2[4])
h3 = 0
m3 = 0
if m1 <= m2:
	if (h2 - h1) % 2 == 0:
		h3 = int((h2 + h1) / 2)
		m3 = int((m2 + m1) / 2)
	else:
		h3 = int((h2 + h1) / 2)
		m3 = int((m2 + m1) / 2) + 30
		if m3 >= 60:
			h3 += 1
			m3 -= 60
else:
	h2 -= 1
	m2 += 60
	if (h2 - h1) % 2 == 0:
		h3 = int((h2 + h1) / 2)
		m3 = int((m2 + m1) / 2)
		if m3 >= 60:
			h3 += 1
			m3 -= 60
	else:
		h3 = int((h2 + h1) / 2)
		m3 = int((m2 + m1) / 2) + 30
		if m3 >= 60:
			h3 += 1
			m3 -= 60
		if m3 >= 60:
			h3 += 1
			m3 -= 60
if h3 < 10 and m3 < 10:
	print('0' + str(h3) + ':' + '0' + str(m3))
elif h3 < 10 and m3 >= 10:
	print('0' + str(h3) + ':' + str(m3))
elif h3 >= 10 and m3 < 10:
	print(str(h3) + ':' + '0' + str(m3))
else:
	print(str(h3) + ':' + str(m3))


n = input()
p = input()
lam = abs(int(n[0:2]) - int(p[0:2]))
if int(n[-2:]) >= int(p[-2:]):
	dam = 60 * lam - abs(int(n[-2:]) - int(p[-2:]))
else:
	dam = 60 * lam + abs(int(n[-2:]) - int(p[-2:]))
dam = int(dam // 2)
kj = int(n[0:2])
while dam != 0:
	if dam >= 60:
		kj += 1
		dam -= 60
	else:
		break
dam = int(n[-2:]) + dam
if int(dam) > 59:
	kj = str(int(kj) + 1)
	dam = str(int(dam) - 60)
if len(str(dam)) == 1:
	dam = '0' + str(dam)
else:
	pass
if len(str(kj)) == 1:
	kj = '0' + str(kj)
print(str(kj) + ':' + str(dam))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
MM1 = h1 * 60 + m1
MM2 = h2 * 60 + m2
D = MM2 - MM1
mid = ((MM1 + D // 2) // 60, (MM1 + D // 2) % 60)
midh = str(mid[0])
midm = str(mid[1])
if len(midh) == 1:
	midh = '0' + midh
if len(midm) == 1:
	midm = '0' + midm
print(midh + ':' + midm)


(sh, sm) = map(int, input().split(':'))
(eh, em) = map(int, input().split(':'))
while eh > sh:
	em += 60
	eh -= 1
ansm = (sm + em) // 2
ansh = sh
while ansm >= 60:
	ansh += 1
	ansm -= 60
ansh = str(ansh)
ansm = str(ansm)
if len(ansh) == 1:
	ansh = '0' + ansh
if len(ansm) == 1:
	ansm = '0' + ansm
print(ansh + ':' + ansm)


x = input()
y = input()
m1 = int(x[:2]) * 60 + int(x[3:])
m2 = int(y[:2]) * 60 + int(y[3:])
if m2 >= m1:
	c = (m2 - m1) // 2
	m1 += c
	a1 = m1 // 60 % 24
	a1 = str(a1)
	a2 = m1 % 60
	a2 = str(a2)
	if len(a1) == 1:
		a1 = '0' + a1
	if len(a2) == 1:
		a2 = '0' + a2
	print(a1 + ':' + a2)
else:
	c = (24 * 60 - m1 + m2) // 2
	m1 += c
	a1 = m1 // 60 % 24
	a1 = str(a1)
	a2 = m1 % 60
	a2 = str(a2)
	if len(a1) == 1:
		a1 = '0' + a1
	if len(a2) == 1:
		a2 = '0' + a2
	print(a1 + ':' + a2)


def mp():
	return map(int, input().split(':'))
(h1, m1) = mp()
(h2, m2) = mp()
r = h1 * 60 + m1 + h2 * 60 + m2
r = r // 2
h3 = str(r // 60)
if len(h3) == 1:
	h3 = '0' + h3
m3 = str(r % 60)
if len(m3) == 1:
	m3 = '0' + m3
print(h3, ':', m3, sep='')


start = input()
end = input()
sh = int(start[0:2])
eh = int(end[0:2])
sm = int(start[3:])
em = int(end[3:])
sum = (60 * sh + 60 * eh + sm + em) // 2
hr = sum // 60
min = sum - hr * 60
if hr <= 9:
	hour = '0' + str(hr)
else:
	hour = str(hr)
if min <= 9:
	minute = '0' + str(min)
else:
	minute = str(min)
answer = str(hour) + ':' + str(minute)
print(answer)


str1 = input()
str2 = input()
(h1, m1) = list(map(int, str1.split(':')))
(h2, m2) = list(map(int, str2.split(':')))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t1 = (t1 + t2) / 2
print('{:0>2}:{:0>2}'.format(int(t1 // 60), int(t1 % 60)))


import sys
sys.setrecursionlimit(10 ** 5 + 1)
inf = int(10 ** 20)
max_val = inf
min_val = -inf
RW = lambda : sys.stdin.readline().strip()
RI = lambda : int(RW())
RMI = lambda : [int(x) for x in sys.stdin.readline().strip().split()]
RWI = lambda : [x for x in sys.stdin.readline().strip().split()]
(startH, startM) = [int(x) for x in input().split(':')]
(endH, endM) = [int(x) for x in input().split(':')]
start = startH * 60 + startM
ends = endH * 60 + endM
mid = (ends - start) // 2
mid += start
(midH, midM) = divmod(mid, 60)
(H, M) = (str(midH).zfill(2), str(midM).zfill(2))
print(H + ':' + M)


def main():
	(h1, m1) = [int(v) for v in input().split(':')]
	(h2, m2) = [int(v) for v in input().split(':')]
	h = h1
	m = m1
	d = 0
	while h2 != h or m2 != m:
		m += 1
		d += 1
		if m == 60:
			m = 0
			h += 1
	i = 0
	h = h1
	m = m1
	while h2 != h or m2 != m:
		m += 1
		i += 1
		if m == 60:
			m = 0
			h += 1
		if i == d // 2:
			print('{}:{}'.format(str(h).zfill(2), str(m).zfill(2)))
main()


(h1, m1) = tuple(map(int, input().split(':')))
(h2, m2) = tuple(map(int, input().split(':')))
time_def = (h2 - h1) * 60 + m2 - m1
time_mid = h1 * 60 + m1 + time_def // 2
h3 = time_mid // 60
m3 = time_mid % 60
print(str(h3).zfill(2) + ':' + str(m3).zfill(2))


import math as m
(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
ans = m.floor((a * 60 + b + (c * 60 + d)) // 2)
if int(ans / 60) < 10:
	x = '0' + str(int(ans / 60))
else:
	x = str(int(ans / 60))
y = ans % 60
if y < 10:
	y = '0' + str(y)
else:
	y = str(y)
print(x + ':' + y)


t1 = input()
t2 = input()
list_t1 = t1.split(':')
list_t1 = [int(i) for i in list_t1]
list_t2 = t2.split(':')
list_t2 = [int(i) for i in list_t2]
h1 = list_t1[0]
m1 = list_t1[1]
h2 = list_t2[0]
m2 = list_t2[1]
mid = (h1 * 3600 + m1 * 60 + h2 * 3600 + m2 * 60) / 2
mf = mid // 60
hf = mf // 60
mf = mf - hf * 60
if hf < 10:
	hf = '0' + str(int(hf))
else:
	hf = str(int(hf))
if mf < 10:
	mf = '0' + str(int(mf))
else:
	mf = str(int(mf))
print(hf + ':' + mf)


import sys
input = sys.stdin.readline
(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
t = c * 60 + d - (a * 60 + b)
b += t // 2
k = 0
if b >= 60:
	k = b // 60
	b %= 60
print('%02d:%02d' % (a + k, b))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if (h2 - h1) % 2 == 1:
	h2 -= 1
	m2 += 60
if m2 - m1 < 0:
	h2 -= 2
	m2 += 120
h = (h1 + h2) // 2
m = (m1 + m2) // 2
if m >= 60:
	m -= 60
	h += 1
s = ''
if h < 10:
	s += '0'
s += str(h)
s += ':'
if m < 10:
	s += '0'
s += str(m)
print(s)


start = list(map(int, input().split(':')))
finish = list(map(int, input().split(':')))
difference = (finish[0] - start[0]) * 60 + (finish[1] - start[1])
middle = difference // 2
result = [start[0] + middle // 60, start[1] + (middle - middle // 60 * 60)]
result[0] += result[1] // 60
result[1] -= result[1] // 60 * 60
result = list(map(str, result))
if len(result[0]) == 1:
	result[0] = (result[0] + '0')[::-1]
if len(result[1]) == 1:
	result[1] = (result[1] + '0')[::-1]
print(':'.join(result))


def q():
	return list(map(int, input().split(':')))
(h1, m1) = q()
(h2, m2) = q()
a1 = h1 * 60 + m1
a2 = h2 * 60 + m2
res = (a1 + a2) // 2
print('{:02d}:{:02d}'.format(res // 60, res % 60))


def main():
	(h1, m1) = tuple(map(int, input().split(':')))
	(h2, m2) = tuple(map(int, input().split(':')))
	t1 = h1 * 60 + m1
	t2 = h2 * 60 + m2
	t = int((t1 + t2) / 2)
	print(f'{int(t / 60):02}:{int(t % 60):02}')
main()


time1 = input()
time2 = input()
x = time1.split(':')
y = time2.split(':')
x1 = [0] * len(time1)
y1 = [0] * len(time2)
x1[0] = int(x[0]) * 60
x1[1] = int(x[1])
y1[0] = int(y[0]) * 60
y1[1] = int(y[1])
newtime1 = 0
newtime2 = 0
res = 0
minu = 0
hr = 0
newtime1 = int(x1[0] + x1[1])
newtime2 = int(y1[0] + y1[1])
res = abs(newtime1 - newtime2)
res = int(res / 2)
hr = int(res / 60)
minu = int(res % 60)
x1[0] = int(int(x1[0]) / 60) + hr
x1[1] = int(x1[1]) + minu
if int(x1[1]) >= 60:
	x1[0] = x1[0] + int(x1[1] / 60)
	x1[1] = int(x1[1] % 60)
print('{0:02d}'.format(x1[0]), end='')
print(':', end='')
print('{0:02d}'.format(x1[1]), end='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
diff = h1 * 60 + m1 + (h2 * 60 + m2 - (h1 * 60 + m1)) // 2
hres = diff // 60
mres = diff % 60
print(str(hres).zfill(2), str(mres).zfill(2), sep=':')


s1 = input()
s2 = input()
h1 = int(s1[:2])
m1 = int(s1[3:])
h2 = int(s2[:2])
m2 = int(s2[3:])
r = ((h2 - h1) * 60 + m2 - m1) // 2
h1 += (m1 + r) // 60
m1 = (m1 + r) % 60
h1 = str(h1)
m1 = str(m1)
if len(h1) == 2:
	pass
else:
	h1 = '0' + h1
if len(m1) == 2:
	pass
else:
	m1 = '0' + m1
ans = h1 + ':' + m1
print(ans)


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
suma = a * 60 + b
sumb = c * 60 + d
sumf = (suma + sumb) / 2
a = str(int(sumf // 60))
b = str(int(sumf % 60))
if len(a) == 2 and len(b) == 2:
	print(a + ':' + b)
elif len(a) == 1 and len(b) == 2:
	print('0' + a + ':' + b)
elif len(a) == 1 and len(b) == 1:
	print('0' + a + ':' + '0' + b)
else:
	print(a + ':' + '0' + b)


a = [int(x) for x in input().split(':')]
b = [int(x) for x in input().split(':')]
t = int(((b[0] - a[0]) * 60 + b[1] - a[1]) / 2 + a[0] * 60 + a[1])
h = int(t / 60)
m = t % 60
print(f'{h:02}:{m:02}')


(h_beg, m_beg) = map(int, input().split(':'))
(h_end, m_end) = map(int, input().split(':'))
med = (h_beg * 60 + m_beg + h_end * 60 + m_end) / 2
h_med = int(med / 60)
m_med = med % 60
print('{:02}:{:02}'.format(h_med, int(m_med)))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
ans = (t2 + t1) / 2
h = str(int(ans // 60))
m = str(int(ans % 60))
if int(h) < 10:
	h = '0' + h
if int(m) < 10:
	m = '0' + m
ans = h + ':' + m
print(ans)


(s, t) = [input() for _ in range(2)]
a = int(s[:2])
b = int(s[-2:])
c = int(t[:2])
d = int(t[-2:])
e = c - a
if e < 0:
	e += 24
e = (e * 60 + d - b) // 2
h = a + e // 60
m = b + e % 60
if m >= 60:
	h += 1
	m %= 60
print('{hour:02}:{minute:02}'.format(hour=h, minute=m))


st = input().split(':')
en = input().split(':')
for i in range(len(st)):
	st[i] = int(st[i])
	en[i] = int(en[i])
h = en[0] - st[0]
m = en[1] - st[1]
h *= 60
mid = (h + m) // 2
hm = mid // 60
mm = mid % 60
k = st[0] + hm
s = st[1] + mm
if s >= 60:
	k += s // 60
	s = s % 60
if k < 10:
	hrs = '0' + str(k)
else:
	hrs = str(k)
if s < 10:
	mins = '0' + str(s)
else:
	mins = str(s)
print(hrs, ':', mins, sep='')


import sys

def rint():
	return map(int, sys.stdin.readline().split())
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
mid = t1 + (t2 - t1) // 2
h = str(mid // 60)
if len(h) == 1:
	h = '0' + h
m = str(mid % 60)
if len(m) == 1:
	m = '0' + m
print(''.join([h, ':', m]))


def main():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	min1 = h1 * 60 + m1
	min2 = h2 * 60 + m2
	diff = min2 - min1
	mid = min1 + int(diff / 2)
	hr = mid // 60
	m = mid % 60
	if hr < 10:
		hr = '0' + str(hr)
	if m < 10:
		m = '0' + str(m)
	print(str(hr) + ':' + str(m))
main()


import math
first_line = input()
second_line = input()
h1 = int(first_line.split(':')[0])
m1 = int(first_line.split(':')[1])
h2 = int(second_line.split(':')[0])
m2 = int(second_line.split(':')[1])
minutes_1 = h1 * 60 + m1
minutes_2 = h2 * 60 + m2
minutes_def = minutes_2 - minutes_1
minutes_def = round(minutes_def / 2)
result_h = h1 + math.floor(minutes_def / 60)
result_m = m1 + minutes_def % 60
if result_m >= 60:
	result_m = result_m % 60
	result_h += 1
if result_h < 10:
	result_h = '0' + str(result_h)
if result_m < 10:
	result_m = '0' + str(result_m)
print(str(result_h) + ':' + str(result_m))


def func(params):
	(h1, m1, h2, m2) = params
	x3 = (h1 + h2) / 2 if (h1 + h2) % 2 == 0 else (h1 + h2) // 2
	y3 = (m1 + m2) / 2 if (h1 + h2) % 2 == 0 else 30 + (m1 + m2) / 2
	if y3 >= 60:
		x3 += 1
		y3 -= 60
	if len(str(int(x3))) == 1:
		x3 = '0' + str(int(x3))
	else:
		x3 = str(int(x3))
	if len(str(int(y3))) == 1:
		y3 = '0' + str(int(y3))
	else:
		y3 = str(int(y3))
	print(str(x3) + ':' + str(y3))
params = []
params.extend(list(map(int, input().split(':'))))
params.extend(list(map(int, input().split(':'))))
func(params)


str1 = str(input())
str1 = str1.split(':')
a = int(str1[0]) * 60
a += int(str1[1])
str2 = str(input())
str2 = str2.split(':')
b = int(str2[0]) * 60
b += int(str2[1])
c = (a + b) / 2
d = int(c / 60)
e = int(c - int(c / 60) * 60)
str3 = ''
if len(str(d)) == 1:
	str3 += '0'
	str3 += str(d)
else:
	str3 += str(d)
str3 += ':'
if len(str(e)) == 1:
	str3 += '0' + str(e)
else:
	str3 += str(e)
print(str3)


(h1, m1) = [int(e) for e in input().split(':')]
(h2, m2) = [int(e) for e in input().split(':')]
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
const = (t2 - t1) / 2
hr = const // 60
mi = const % 60
h1 += hr
m1 += mi
if m1 >= 60:
	m1 -= 60
	h1 += 1
m1 = str(int(m1))
h1 = str(int(h1))
if len(m1) == 1:
	m1 = '0' + m1
if len(h1) == 1:
	h1 = '0' + h1
print(h1 + ':' + m1)


s1 = input()
s2 = input()
h1 = int(s1.split(':')[0])
m1 = int(s1.split(':')[1])
h2 = int(s2.split(':')[0])
m2 = int(s2.split(':')[1])
hs1 = h1 * 60 + m1
hs2 = h2 * 60 + m2
a_m = hs2 - hs1
ans = hs1 + a_m // 2
ans_h = int(ans // 60)
ans_m = int(ans % 60)
s_1 = str(ans_h)
s_2 = str(ans_m)
if ans_h <= 9:
	s_1 = '0' + s_1
if ans_m <= 9:
	s_2 = '0' + s_2
print(s_1 + ':' + s_2)


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
m = m1 + m2
h = (h2 + h1) * 60 + m
p = h // 2
p1 = h % 2
th = p // 60
m1 = p % 60 + p1
if m1 >= 60:
	m1 = m1 % 60
	th += 1
if th < 10:
	th = '0' + str(th)
if m1 < 10:
	m1 = '0' + str(m1)
m1 = str(m1)
th = str(th)
print(th + ':' + m1)


import sys

def ints():
	return list(map(int, sys.stdin.readline().strip().split()))
tc = 1
while tc:
	tc -= 1
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	val = (h2 - h1) * 60 + (m2 - m1)
	h1 += val // 120
	m1 += val // 2 % 60
	(a, b) = ('', '')
	if m1 >= 60:
		h1 += 1
		m1 -= 60
	if m1 < 10:
		b = '0'
	if h1 < 10:
		a = '0'
	print(':'.join([a + str(h1), b + str(m1)]))


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1) * 60
m1 = int(m1)
h2 = int(h2) * 60
m2 = int(m2)
t1 = h1 + m1
t2 = h2 + m2
t3 = t1 + (t2 - t1) / 2
h3 = int(t3 // 60)
m3 = int(t3 % 60)
print('{:02d}:{:02d}'.format(h3, m3))


s1 = input()
s2 = input()
a = int(s1[0:2])
b = int(s1[3:5])
a1 = int(s2[0:2])
b1 = int(s2[3:5])
ans1 = (a + a1) // 2
ans2 = (b + b1) // 2
if (a + a1) % 2 != 0:
	ans2 += 30
if ans2 >= 60:
	ans1 += 1
	ans2 -= 60
ans1 = str(ans1)
ans2 = str(ans2)
if len(ans1) == 1:
	ans1 = '0' + ans1
if len(ans2) == 1:
	ans2 = '0' + ans2
print(ans1 + ':' + ans2)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
ans = (h1 * 60 + m1 + h2 * 60 + m2) // 2
print(f'{ans // 60 % 24:02}:{ans % 60:02}')


(x, y) = input().split(':')
(z, w) = input().split(':')
x = int(x)
y = int(y)
z = int(z)
w = int(w)
t1 = x * 60 + y
t2 = z * 60 + w
t3 = (t1 + t2) / 2
t1 = int(t3 / 60)
t2 = int(t3 % 60)
print('{:02d}:{:02d}'.format(t1, t2))


a = input()
b = input()
(h1, m1) = (a[:2], a[3:])
(h2, m2) = (b[:2], b[3:])
diff = int(h2) - int(h1)
m3 = (int(m2) + 60 * diff + int(m1)) // 2
add = 0
while m3 >= 60:
	add += 1
	m3 = m3 - 60
h3 = int(h1) + add
h3 = str(h3)
m3 = str(m3)
while len(h3) != 2:
	h3 = '0' + h3
while len(m3) != 2:
	m3 = '0' + m3
print(h3 + ':' + m3)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t3 = (h1 * 60 + m1 + h2 * 60 + m2) // 2
print('%s:%s' % (str(t3 // 60).rjust(2, '0'), str(t3 % 60).rjust(2, '0')))


x = input()
y = input()
x = x.split(':')
y = y.split(':')
x1 = int(x[0])
x2 = int(x[1])
y1 = int(y[0])
y2 = int(y[1])
mq1 = x1 * 60 + x2
mq2 = y1 * 60 + y2
mq3 = (mq1 + mq2) // 2
ho = str(mq3 // 60)
mn = str(mq3 % 60)
if len(ho) == 1:
	ho = '0' + ho
if len(mn) == 1:
	mn = '0' + mn
print(ho + ':' + mn)


t1 = [int(x) for x in input().split(':')]
t2 = [int(x) for x in input().split(':')]
min1 = t1[0] * 60 + t1[1]
min2 = t2[0] * 60 + t2[1]
avg = (min1 + min2) // 2
hrs = avg // 60
if hrs < 10:
	print('0', end='')
mins = avg % 60
print(hrs, end='')
print(':', end='')
if mins < 10:
	print('0', end='')
print(mins)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
average = (time2 + time1) / 2
result_hours = int(average // 60)
if result_hours % 10 == result_hours:
	result_hours = '0' + str(result_hours)
result_minutes = int(average % 60)
if result_minutes % 10 == result_minutes:
	result_minutes = '0' + str(result_minutes)
result = '{}:{}'.format(result_hours, result_minutes)
print(result)


(h1, m1) = [int(item) for item in input().split(':')]
(h2, m2) = [int(item) for item in input().split(':')]
mm1 = h1 * 60 + m1
mm2 = h2 * 60 + m2
res = (mm2 - mm1) // 2
print('%02d:%02d' % ((h1 + res // 60 + (m1 + res % 60) // 60) % 24, (m1 + res % 60) % 60))


v1 = input()
v2 = input()
h1 = int(v1[0] + v1[1])
m1 = int(v1[3] + v1[4])
h2 = int(v2[0] + v2[1])
m2 = int(v2[3] + v2[4])
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t3 = (t1 + t2) // 2
h3 = t3 // 60
m3 = t3 % 60
if h3 < 10:
	h3 = '0' + str(h3)
if m3 < 10:
	m3 = '0' + str(m3)
print(str(h3) + ':' + str(m3))


t1 = input()
m = str(t1[0]) + str(t1[1])
n = str(t1[3]) + str(t1[4])
n = int(n)
m = int(m)
x = m * 60
mn = x + n
t = input()
m1 = str(t[0]) + str(t[1])
n1 = str(t[3]) + str(t[4])
n1 = int(n1)
m1 = int(m1)
x1 = m1 * 60
mn1 = x1 + n1
sm = mn1 - mn
sm //= 2
mn += sm
hourse1 = 0
while mn >= 60:
	hourse1 += 1
	mn -= 60
if len(str(hourse1)) == 1:
	hourse1 = '0' + str(hourse1)
if len(str(mn)) == 1:
	mn = '0' + str(mn)
print(hourse1, ':', mn, sep='')


import math
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
h3 = 0
m3 = 0
if h1 == h2:
	h3 = h1
	m3 = m1 + (m2 - m1) // 2
else:
	h3 = h1 + (h2 - h1) // 2
	m3 = m1 + (m2 - m1) // 2
	if (h2 - h1) % 2 != 0:
		h3 += math.floor((m3 + 30) / 60)
		m3 = (m3 + 30) % 60
if h3 < 10:
	h3 = '0' + str(h3)
if m3 < 10:
	m3 = '0' + str(m3)
print(str(h3) + ':' + str(m3))


(sh, sm) = map(int, input().split(':'))
(eh, em) = map(int, input().split(':'))
r = (sh * 60 + sm + (eh * 60 + em)) // 2
print('{:02d}:{:02d}'.format(r // 60, r % 60))


(h, m) = map(int, input().split(':'))
(a, b) = map(int, input().split(':'))
t1 = h * 60 + m
t2 = a * 60 + b
x = str((t2 + t1) // 2 // 60)
y = str((t2 + t1) // 2 % 60)
print('0' * (2 - len(x)) + x + ':' + '0' * (2 - len(y)) + y)


import sys

def getAndParseInt(num=1):
	string = sys.stdin.readline().strip()
	if num == 1:
		return int(string)
	else:
		return [int(part) for part in string.split()]

def getAndParseString(num=1, delim=''):
	string = sys.stdin.readline().strip()
	if num == 1:
		return string
	elif delim != '':
		return [part for part in string.split(delim)]
	else:
		return [part for part in string.split()]
(h1, m1) = [int(s) for s in getAndParseString(2, ':')]
(h2, m2) = [int(s) for s in getAndParseString(2, ':')]
half_duration = ((h2 - h1) * 60 - m1 + m2) // 2
h_mid = h1 + (m1 + half_duration) // 60
m_mid = (m1 + half_duration) % 60
h_str = str(h_mid)
m_str = str(m_mid)
if h_mid < 10:
	h_str = '0' + h_str
if m_mid < 10:
	m_str = '0' + m_str
out_str = h_str + ':' + m_str
print(out_str)


def main():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	if h2 - h1 == 0:
		h = h1
		m = m1 + (m2 - m1) // 2
	else:
		minutes = 60 - m1 + (h2 - h1 - 1) * 60 + m2
		minutes = minutes // 2
		h = minutes // 60
		x = minutes % 60
		k = m1 + x
		h = h1 + h + k // 60
		m = k % 60
	hs = str(h)
	ms = str(m)
	if len(hs) == 1:
		hs = '0' + hs
	if len(ms) == 1:
		ms = '0' + ms
	print(hs + ':' + ms)
main()


import math
import os
import random
import re
import sys
(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
s = h1 * 60 + m1
e = h2 * 60 + m2
a = s + (e - s) // 2
x = str(a // 60)
y = str(a % 60)
if len(x) == 1:
	x = '0' + x
if len(y) == 1:
	y = '0' + y
print(x + ':' + y)


start = input().split(':')
stop = input().split(':')
hhstart = int(start[0]) * 60
mmstart = int(start[1])
hhstop = int(stop[0]) * 60
mmstop = int(stop[1])
tStop = hhstop + mmstop
tStart = hhstart + mmstart
TimeTest = tStop - tStart
halfTime = TimeTest // 2
middleTime = tStart + halfTime

def countHours():
	h = 0
	for i in range(0, 24):
		n = 60 * i
		if middleTime >= 60 + n:
			h = h + 1
		else:
			return h
			break
hours = countHours()
minutes = middleTime - hours * 60
print('{:02d}:{:02d}'.format(hours, minutes))


from math import floor

def main():
	time1 = input()
	time2 = input()
	hourDiff = int(int(time2[0:2]) - int(time1[0:2]))
	minDiff = int(int(time2[3:]) - int(time1[3:]))
	totalMinDiff = hourDiff * 60 + minDiff
	mid = totalMinDiff / 2
	hourAdd = int(mid / 60)
	minAdd = mid % 60
	hour = str(int(int(time1[0:2]) + hourAdd))
	minu = str(int(int(time1[3:]) + minAdd))
	if int(minu) >= 60:
		hour = str(int(hour) + 1)
		minu = str(int(minu) - 60)
	if len(hour) == 1:
		hour = '0' + hour
	if len(minu) == 1:
		minu = '0' + minu
	print(hour + ':' + minu)
	return
main()


a = input()
b = input()
temp = a[0] + a[1]
temp2 = a[3] + a[4]
total_min = int(temp) * 60 + int(temp2)
temp3 = b[0] + b[1]
temp4 = b[3] + b[4]
temp5 = int(temp3) * 60 + int(temp4)
total_min = temp5 - total_min
total_min /= 2
hr_inc = total_min // 60
min_inc = total_min % 60
ans1 = int(temp2) + min_inc
hr_inc += ans1 / 60
hr_inc += int(temp)
ans1 %= 60
hr_inc = int(hr_inc)
ans1 = int(ans1)
if len(str(hr_inc)) < 2:
	print('0', end='')
print(int(hr_inc), end='')
print(':', end='')
if len(str(ans1)) < 2:
	print('0', end='')
print(int(ans1))


start = [int(x) for x in input().split(':')]
end = [int(x) for x in input().split(':')]
startmin = 60 * start[0] + start[1]
endmin = 60 * end[0] + end[1]
totmin = (startmin + endmin) // 2
minans = totmin % 60
hourans = totmin // 60
minans = str(minans)
hourans = str(hourans)
if len(minans) == 1:
	minans = '0' + minans
if len(hourans) == 1:
	hourans = '0' + hourans
print(hourans, ':', minans, sep='')


x = input().split(':')
y = input().split(':')
x = int(x[0]) * 60 + int(x[1])
y = int(y[0]) * 60 + int(y[1])
z = int((x + y) / 2)
ans1 = int(z / 60)
ans2 = int(z % 60)
if ans1 < 10 and ans2 < 10:
	print('0{}:0{}'.format(ans1, ans2))
elif ans1 < 10 and ans2 >= 10:
	print('0{}:{}'.format(ans1, ans2))
elif ans1 >= 10 and ans2 < 10:
	print('{}:0{}'.format(ans1, ans2))
else:
	print('{}:{}'.format(ans1, ans2))


import sys
a = input()
b = input()
ha = int(a[:2])
ma = int(a[3:])
hb = int(b[:2])
mb = int(b[3:])
ra = ha * 60 + ma
rb = hb * 60 + mb
diffab = rb - ra
diffab //= 2
newh = 0
while diffab >= 60:
	diffab -= 60
	newh += 1
ha += newh
ma += diffab
while ma >= 60:
	ma -= 60
	ha += 1
ha = str(ha)
ma = str(ma)
if len(ha) == 1:
	ha = '0' + ha
if len(ma) == 1:
	ma = '0' + ma
print(ha, ':', ma, sep='')


a = [int(x) for x in input().split(':')]
b = [int(x) for x in input().split(':')]
minute = int((60 * (a[0] + b[0]) + a[1] + b[1]) / 2)
h = str(int(minute / 60))
if len(h) == 1:
	h = '0' + h
m = str(int(minute % 60))
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
d = abs(b[0] + a[0]) * 60 + abs(b[1] + a[1])
if int(d / 120) % 24 < 10:
	print(0, end='')
print(int(d / 120) % 24, end=':')
if int(d / 2) % 60 % 60 < 10:
	print(0, end='')
print(int(d / 2) % 60 % 60)


n = []
for i in range(2):
	n.append(list(map(int, input().split(':'))))
h = (sum([n[0][0], n[1][0]]) * 60 + sum([n[0][1], n[1][1]])) / 2
print(f"{'{:02}'.format(int(h // 60))}:{'{:02}'.format(int(h % 60))}")


a = input().split(':')
b = input().split(':')
(a[0], a[1], b[0], b[1]) = (int(a[0]), int(a[1]), int(b[0]), int(b[1]))
h = (b[0] - a[0]) * 60
m = (b[1] + h - a[1]) // 2
while m:
	a[1] += 1
	if a[1] == 60:
		a[0] += 1
		a[1] = 0
	m -= 1
(f, s) = (str(a[0]), str(a[1]))
if len(f) == 1:
	f = '0' + f
if len(s) == 1:
	s = '0' + s
print(f + ':' + s)


t1 = input()
t2 = input()
h1 = int(t1[:2])
m1 = int(t1[3:])
h2 = int(t2[:2])
m2 = int(t2[3:])
T1 = h1 * 60 + m1
T2 = h2 * 60 + m2
T = int((T2 - T1) // 2)
T1 += T
H = T1 // 60
M = T1 % 60
hstr = '0'
mstr = '0'
if H <= 9:
	hstr = hstr + str(H)
else:
	hstr = str(H)
if M <= 9:
	mstr = mstr + str(M)
else:
	mstr = str(M)
print(hstr, end=':')
print(mstr)


(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
x = (60 * h1 + m1 + 60 * h2 + m2) / 2
s = {'>'}
h = int(x // 60)
m = int(x % 60)
print(f'{h:02}'.format(), ':', f'{m:02}'.format(), sep='')


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
ih1 = int(h1)
ih2 = int(h2)
im1 = int(m1)
im2 = int(m2)
min1 = 60 * ih1 + im1
min2 = 60 * ih2 + im2
minT = (min1 + min2) / 2
if minT / 60 < 10:
	if minT % 60 < 10:
		print('0{}:0{}'.format(int(minT / 60), int(minT % 60)))
	else:
		print('0{}:{}'.format(int(minT / 60), int(minT % 60)))
elif minT % 60 < 10:
	print('{}:0{}'.format(int(minT / 60), int(minT % 60)))
else:
	print('{}:{}'.format(int(minT / 60), int(minT % 60)))


s1 = input().strip()
s2 = input().strip()
(h1, m1) = map(int, s1.split(':'))
(h2, m2) = map(int, s2.split(':'))
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
mid = (time1 + time2) // 2
(h3, m3) = (mid // 60, mid % 60)
h3 = str(h3).rjust(2, '0')
m3 = str(m3).rjust(2, '0')
print('{}:{}'.format(h3, m3))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
h3 = (h1 + h2) // 2
m3 = (m1 + m2) // 2 + (30 if (h1 + h2) % 2 == 1 else 0)
if m3 >= 60:
	m3 -= 60
	h3 += 1
print('{:02d}:{:02d}'.format(h3, m3))


t1 = input()
t2 = input()
m1 = int(t1[:2]) * 60 + int(t1[3:])
m2 = int(t2[:2]) * 60 + int(t2[3:])
m = (m1 + m2) // 2
lm = str(m % 60)
lh = str(m // 60)
if m % 60 < 10:
	lm = '0' + str(m % 60)
if m // 60 < 10:
	lh = '0' + str(m // 60)
print(lh + ':' + lm)


import re
time = []
for _ in range(2):
	pattern = re.findall('\\d+', str(input()))
	time.append(pattern)
hrs = (int(time[1][0]) - int(time[0][0])) * 60
minute = int(time[1][1]) - int(time[0][1])
half = (hrs + minute) // 2
new_hrs = half // 60
new_min = half % 60
time_hrs = int(time[0][0]) + new_hrs
time_min = int(time[0][1]) + new_min
if time_min >= 60:
	time_hrs = time_hrs + time_min // 60
	time_min = time_min % 60
if time_min < 10:
	time_min = '0' + str(time_min)
if time_hrs < 10:
	time_hrs = '0' + str(time_hrs)
print(str(time_hrs) + ':' + str(time_min))


x = input()
y = input()
h1 = x[0] + x[1]
h2 = y[0] + y[1]
m1 = x[3] + x[4]
m2 = y[3] + y[4]
r1 = int(h1) * 60 + int(m1)
r2 = int(h2) * 60 + int(m2)
z = abs(r1 - r2) // 2
z = z + r1
p = str(z // 60)
q = str(z % 60)
if len(p) == 1:
	p = '0' + p
if len(q) == 1:
	q = '0' + q
print(p + ':' + q)


init = list(map(int, input().split(':')))
fim = list(map(int, input().split(':')))
total_init_min = init[0] * 60 + init[1]
total_fim_min = fim[0] * 60 + fim[1]
mid_time = (total_fim_min - total_init_min) / 2 + total_init_min
mid_h = int(mid_time / 60)
mid_m = int(mid_time % 60)
mid_h = '{0:0=2d}'.format(mid_h)
mid_m = '{0:0=2d}'.format(mid_m)
output = [mid_h, mid_m]
print(':'.join(map(str, output)))


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
time_1 = a[1] + a[0] * 60
time_2 = b[1] + b[0] * 60
a_time = int(time_2 - time_1) // 2
answer = []
a_s = a[1] + a_time
a_f = a[0] + a_s // 60
a_s %= 60
if len(str(a_f)) == 1:
	answer.append('0' + str(a_f))
else:
	answer.append(str(a_f))
if len(str(a_s)) == 1:
	answer.append('0' + str(a_s))
else:
	answer.append(str(a_s))
print(':'.join(map(str, answer)))


(hh1, mm1) = map(int, input().split(':'))
(hh2, mm2) = map(int, input().split(':'))
tmp1 = hh1
tmp2 = mm1
mm = 0
while tmp1 < hh2:
	mm += 60 - tmp2
	tmp1 += 1
	tmp2 = 0
mm += mm2 - tmp2
mm = mm // 2
tmp = mm // 60
mm = mm % 60
hh = hh1 + tmp
mm = mm1 + mm
if mm > 59:
	hh += 1
mm %= 60
if mm < 10:
	mm = '0' + str(mm)
if hh < 10:
	hh = '0' + str(hh)
print(hh, end='')
print(':', end='')
print(mm, end='')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
minutes = h2 * 60 + m2 - (h1 * 60 + m1)
half = minutes // 2
total = h1 * 60 + m1 + half
h = total // 60
m = total % 60
h = str(h)
m = str(m)
if len(h) == 1:
	h = '0' + h
if len(m) == 1:
	m = '0' + m
print(h + ':' + m)


(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
if h2 > h1:
	total = 60 - m1 + 60 * (h2 - h1 - 1) + m2
else:
	total = m2 - m1
total = total // 2
h3 = h1 + total // 60
m3 = m1 + total % 60
if m3 >= 60:
	h3 += 1
	m3 -= 60
if m3 in range(0, 10):
	m3 = '0{}'.format(m3)
if h3 in range(0, 10):
	h3 = '0{}'.format(h3)
print('{}:{}'.format(h3, m3))


TN = 1

def solution():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	cnt = ((h1 + h2) * 60 + m1 + m2) // 2
	print('0' * (2 - len(str(cnt // 60))) + str(cnt // 60) + ':' + '0' * (2 - len(str(cnt % 60))) + str(cnt % 60))
while TN != 0:
	solution()
	TN -= 1


def twoDig(x):
	return ('0' if x < 10 else '') + str(x)
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
mm1 = h1 * 60 + m1
mm2 = h2 * 60 + m2
m = (mm1 + mm2) // 2
print(f'{twoDig(m // 60)}:{twoDig(m % 60)}')


(h, m) = map(int, input().split(':'))
(a, b) = map(int, input().split(':'))
h += a
m += b
if h % 2 == 1:
	h //= 2
	m += 60
	m //= 2
	if m >= 60:
		h += 1
		m -= 60
else:
	h //= 2
	m //= 2
print('%02d:%02d' % (h, m))


def main():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	if m2 < m1:
		m2 += 60
		h2 -= 1
	if h2 < h1:
		h2 += 24
	m3 = m1 + (m2 - m1) / 2 + (h2 - h1) * 30
	h3 = h1 + m3 // 60
	m3 %= 60
	if h3 >= 24:
		h3 -= 24
	print('{:02d}:{:02d}'.format(int(h3), int(m3)))
main()


s1 = input()
s2 = input()
h1 = s1[:2]
m1 = s1[3:5]
h2 = s2[:2]
m2 = s2[3:5]
h3 = int(h1)
m3 = int(m1)
h4 = int(h2)
m4 = int(m2)
h5 = (h3 + h4) // 2
m5 = 0
if (h3 + h4) % 2 != 0:
	m5 = 30
m5 = m5 + (m3 + m4) // 2
if m5 > 59:
	m5 = m5 - 60
	h5 = h5 + 1
ans = str(h5) + ':' + str(m5)
if h5 < 10:
	ans = '0' + ans
if m5 < 10:
	ans = ans[:3] + '0' + str(m5)
print(ans)


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
over = c * 60 + d - (a * 60 + b)
over //= 2
over += a * 60 + b
e = str(over // 60)
if len(e) == 1:
	e = '0' + e
f = str(over % 60)
if len(f) == 1:
	f = '0' + f
print(e, f, sep=':')


h1 = input().split(':')
h2 = input().split(':')
for i in range(len(h1)):
	h1[i] = int(h1[i])
for i in range(len(h2)):
	h2[i] = int(h2[i])

def time(n, m):
	temp = (n - m) / 2 + m
	if str(temp)[-1] != '0':
		other = int(str(temp)[-1]) * 6
		return [int(temp), int(other)]
	return [int(temp), 0]

def time2(n, m):
	return int((n - m) / 2 + m)
decimals = time2(max(h1[-1], h2[-1]), min(h1[-1], h2[-1]))
hours = time(max(h1[0], h2[0]), min(h1[0], h2[0]))
hours[-1] = hours[-1] + decimals
if hours[-1] >= 60:
	hours[0] += 1
	hours[-1] -= 60
hours = str(hours).replace(',', ':').replace('[', '').replace(']', '').replace(' ', '')
if ':' in hours[0:2]:
	hours = '0' + hours
if ':' in hours[-2]:
	hours = hours[0:len(hours) - 1] + '0' + hours[-1]
print(hours)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
minutes = ((h2 - h1) * 60 + (m2 - m1)) / 2
h1 = h1 + minutes // 60
m1 = m1 + minutes % 60
if m1 >= 60:
	m1 -= 60
	h1 += 1
print('{:02d}:{:02d}'.format(int(h1), int(m1)))


(h, m) = map(int, input().split(':'))
(h1, m1) = map(int, input().split(':'))
m2 = h * 60 + m
m3 = h1 * 60 + m1
m4 = (m2 + m3) // 2
hn = m4 // 60
mn = m4 % 60
if hn < 10:
	print(0, end='')
print(hn, end=':')
if mn < 10:
	print(0, end='')
print(mn)


start = input().split(':')
end = input().split(':')
sMin = int(start[0]) * 60 + int(start[1])
eMin = int(end[0]) * 60 + int(end[1])
midMin = (sMin + eMin) // 2
midH = str(midMin // 60)
midM = str(midMin % 60)
if len(midH) == 1:
	midH = '0' + midH
if len(midM) == 1:
	midM = '0' + midM
print(midH + ':' + midM)


x = input()
y = input()
a = int(x[:2])
b = int(x[3:])
A = a * 60 + b
a = int(y[:2])
b = int(y[3:])
B = a * 60 + b
C = (A + B) // 2
print(C // 600, C // 60 % 10, ':', C % 60 // 10, C % 60 % 10, sep='')


import sys
time1 = sys.stdin.readline().strip()
time2 = sys.stdin.readline().strip()
t = (600 * int(time1[0]) + 60 * int(time1[1]) + 10 * int(time1[3]) + int(time1[4]) + 600 * int(time2[0]) + 60 * int(time2[1]) + 10 * int(time2[3]) + int(time2[4])) // 2
ans = ''
m = t % 60
h = t // 60
if h < 10:
	ans = ans + '0'
ans = ans + str(h)
ans = ans + ':'
if m < 10:
	ans = ans + '0'
ans = ans + str(m)
print(ans)


start = list(input())
end = list(input())
h1 = int(''.join(start[:2]))
m1 = int(''.join(start[-2:]))
h2 = int(''.join(end[:2]))
m2 = int(''.join(end[-2:]))
extra = 0
min = 60 - m1 + (h2 - h1 - 1) * 60 + m2
mid_m = (h1 * 60 + m1 + min // 2) % 60
mid_h = (h1 * 60 + m1 + min // 2) // 60
print('{:02d}:{:02d}'.format(mid_h, mid_m))


I = lambda : map(int, input().split(':'))
INT = lambda : int(input())
T = 1
for _ in range(T):
	(h1, m1) = list(I())
	(h2, m2) = list(I())
	t1 = 60 * h1 + m1
	t2 = 60 * h2 + m2
	d = (t2 - t1) // 2
	t = t1 + d
	(h3, m3) = divmod(t, 60)
	print('0' * (h3 < 10) + str(h3) + ':' + '0' * (m3 < 10) + str(m3))


start = list(map(int, input().split(':')))
stop = list(map(int, input().split(':')))
if stop[0] > start[0]:
	min_diff = stop[1] - start[1] + 60 * (stop[0] - start[0])
	mid_diff = int(min_diff / 2)
	mid_min = start[1] + mid_diff
	mid_hour = start[0]
	if mid_min >= 60:
		mid_hour = start[0] + mid_min // 60
		mid_min = mid_min % 60
else:
	min_diff = stop[1] - start[1]
	mid_diff = int(min_diff / 2)
	mid_min = start[1] + mid_diff
	mid_hour = start[0]
if mid_min // 10 == 0:
	mid_min = '0' + str(mid_min)
if mid_hour // 10 == 0:
	mid_hour = '0' + str(mid_hour)
print(f'{mid_hour}:{mid_min}')


def lessthanten(num1):
	if num1 < 10:
		return '0' + str(num1)
	else:
		return str(num1)
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
result = ''
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
mid_t = (time1 + time2) // 2
mid_h = mid_t // 60
mid_m = mid_t % 60
mid_h = lessthanten(mid_h)
mid_m = lessthanten(mid_m)
print(mid_h + ':' + mid_m)


a1 = input()
a2 = input()
temp1 = a1.split(':')
temp2 = a2.split(':')
x = (int(temp2[0]) * 60 + int(temp2[1]) + (int(temp1[0]) * 60 + int(temp1[1]))) / 2
x1 = int(x % 60)
x2 = int(x / 60)
if x2 < 10:
	x2 = str('0') + str(x2)
if x1 < 10:
	x1 = str('0') + str(x1)
print(str(x2) + ':' + str(x1))


x = input()
y = input()
if x[0] == 0:
	a = int(x[1:2])
else:
	a = int(x[:2])
if y[0] == 0:
	b = int(y[1:2])
else:
	b = int(y[:2])
if x[3] == 0:
	c = int(x[4])
else:
	c = int(x[3:5])
if y[3] == 0:
	d = int(y[4])
else:
	d = int(y[3:5])
k = (b - a) * 60 + d - c
k = int(k // 2)
p = k // 60
q = k % 60
c = c + q
s = ''
a += p
if c > 59:
	a += 1
	c += -60
if a < 10:
	s += '0'
	s += str(a)
else:
	s += str(a)
s += ':'
if c < 10:
	s += '0'
	s += str(c)
else:
	s += str(c)
print(s)


hourc = 60 * 24
minutc = 60
n = [int(x) for x in input().split(':')]
m = [int(x) for x in input().split(':')]
total = (n[0] * 60 + n[1] + m[0] * 60 + m[1]) // 2
print(str(total // 60).rjust(2, '0') + ':' + str(total % 60).rjust(2, '0'))


a = str(input())
b = str(input())
i = a.split(':')
f = b.split(':')
for h in range(len(i)):
	i[h] = int(i[h])
for h in range(len(f)):
	f[h] = int(f[h])
h = f[0] - i[0]
(m, s, l) = (0, 0, 0)
if f[1] > i[1]:
	m = f[1] - i[1]
elif f[1] < i[1]:
	d = 60 - i[1]
	m = d + f[1]
	l = 1
h = h - l
if h % 2 == 0:
	h = h / 2
else:
	h -= 1
	h = h / 2
	s = 30
m = m / 2
x = i[0] + h
y = i[1] + m
if y + s > 60:
	z = y + s
	z -= 60
	x += 1
elif y + s == 60:
	x += 1
	z = 0
else:
	z = y + s
x = int(x)
z = int(z)
if x < 10:
	x = str(x)
	x = '0' + x
if z < 10:
	z = str(z)
	z = '0' + z
z = str(z)
x = str(x)
print(x + ':' + z)


l = input().split(':')
k = input().split(':')
h1 = int(l[0])
m1 = int(l[1])
h2 = int(k[0])
m2 = int(k[1])
tavg = ((h1 + h2) * 60 + (m1 + m2)) // 2
if tavg // 60 > 9:
	if tavg % 60 > 9:
		tf = str(tavg // 60) + ':' + str(tavg % 60)
	else:
		tf = str(tavg // 60) + ':0' + str(tavg % 60)
elif tavg % 60 > 9:
	tf = '0' + str(tavg // 60) + ':' + str(tavg % 60)
else:
	tf = '0' + str(tavg // 60) + ':0' + str(tavg % 60)
print(tf)


s = list(map(int, input().split(':')))
t = list(map(int, input().split(':')))
h = int((s[0] * 60 + s[1] + (t[0] * 60 + t[1])) / 2 // 60)
s = int((s[0] * 60 + s[1] + (t[0] * 60 + t[1])) / 2 % 60)
print(f'{h:02}:{s:02}')


import sys

def f(x):
	if x <= 9:
		return '0' + str(x)
	else:
		return str(x)
(h1, m1) = [int(item) for item in input().split(':')]
(h2, m2) = [int(item) for item in input().split(':')]
delta = 60 * (h2 - h1) + m2 - m1
for h3 in range(0, 24):
	for m3 in range(0, 60):
		d = 60 * (h3 - h1) + m3 - m1
		if d * 2 == delta:
			print(f(h3), f(m3), sep=':')
			sys.exit()


n = input().split(':')
k = input().split(':')
a = int(n[0]) * 60 + int(n[1])
b = int(k[0]) * 60 + int(k[1])
c = (a + b) // 2
p = c // 60
q = c % 60
if len(str(p)) != 2:
	p = '0' + str(p)
if len(str(q)) != 2:
	q = '0' + str(q)
print(str(p) + ':' + str(q))


while True:
	try:
		(a, b) = map(int, input().split(':'))
		(c, d) = map(int, input().split(':'))
	except EOFError:
		break
	x = a * 60 + b
	y = c * 60 + d
	br = (y - x) // 2
	h = a + br // 60
	m = b + br % 60
	if m >= 60:
		m = m % 60
		h += 1
	if len(str(h)) == 2 and len(str(m)) == 2:
		print('{}:{}'.format(h, m))
	elif len(str(h)) == 1 and len(str(m)) == 2:
		print('0{}:{}'.format(h, m))
	elif len(str(m)) == 1 and len(str(h)) == 2:
		print('{}:0{}'.format(h, m))
	else:
		print('0{}:0{}'.format(h, m))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t = 60 * (h2 - h1) + m2 - m1
t = t // 2
h = h1 + (m1 + t) // 60
m = m1 + t - 60 * ((t + m1) // 60)
(a, b) = (str(h), str(m))
if h < 10:
	a = '0' + str(h)
if m < 10:
	b = '0' + str(m)
print(a + ':' + b)


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
s = a * 60 + b
t = c * 60 + d
m = (s + t) // 2
p = m // 60
q = m % 60
if p < 10:
	print(0, p, sep='', end='')
else:
	print(p, end='')
print(':', end='')
if q < 10:
	print(0, q, sep='')
else:
	print(q)


(a, b) = list(map(int, input().split(':')))
(c, d) = list(map(int, input().split(':')))
a = (a * 60 + b + c * 60 + d) // 2
print('0' * (len(str(a // 60)) % 2) + str(a // 60) + ':' + '0' * (len(str(a % 60)) % 2) + str(a % 60))


s1 = input()
s2 = input()
(h1, h2, m1, m2) = (int(s1[:2]), int(s2[:2]), int(s1[3:]), int(s2[3:]))
v1 = h1 * 60 + m1
v2 = h2 * 60 + m2
s = (v1 + v2) // 2
print('0' * (2 - len(str(s // 60))) + str(s // 60) + ':' + '0' * (2 - len(str(s % 60))) + str(s % 60))


s = input()
t = input()
z = [[int(s[0]), int(s[1])], [int(s[3]), int(s[4])]]
k = [[int(t[0]), int(t[1])], [int(t[3]), int(t[4])]]
aa = []

def f(x):
	m = 0
	for n in range(len(x)):
		m += x[n] * 10 ** (len(x) - n - 1)
	return m

def t(x):
	return x[0] * 60 + x[1]
p = t([f(z[0]), f(z[1])])
q = t([f(k[0]), f(k[1])])
if (q + p) // 1200 != 0 and (q + p) % 120 // 20 != 0:
	print('{}:{}'.format((q + p) // 120, (q + p) % 120 // 2))
elif (q + p) // 1200 != 0 and (q + p) % 120 // 20 == 0:
	print('{}:0{}'.format((q + p) // 120, (q + p) % 120 // 2))
elif (q + p) // 1200 == 0 and (q + p) % 120 // 20 != 0:
	print('0{}:{}'.format((q + p) // 120, (q + p) % 120 // 2))
else:
	print('0{}:0{}'.format((q + p) // 120, (q + p) % 120 // 2))


import math as m
start = list(map(int, input().split(':')))
end = list(map(int, input().split(':')))
sm = start[0] * 60 + start[1]
em = end[0] * 60 + end[1]
mid = int((sm + em) / 2)
ah = mid // 60
am = mid % 60
print('%0*d' % (2, ah) + ':' + '%0*d' % (2, am))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
if h2 < h1:
	(h1, h2) = (h2, h1)
d_h = h2 - h1
d_m = m2 - m1
delta = (d_h * 60 + d_m) // 2
if delta >= 60:
	h1 += delta // 60
	delta %= 60
m1 += delta
if m1 >= 60:
	h1 += 1
	m1 = m1 - 60
res = ''
if h1 < 10:
	res += '0' + str(h1)
else:
	res += str(h1)
if m1 < 10:
	res += ':0' + str(m1)
else:
	res += ':' + str(m1)
print(res)


s_mid = 0
(s1, s2) = (input(), input())
(s1, s2) = (s1.split(':'), s2.split(':'))
minutes_one = int(s1[0]) * 60 + int(s1[1])
minutes_two = int(s2[0]) * 60 + int(s2[1])
minutes = (minutes_one + minutes_two) // 2
time = str(minutes // 60).rjust(2, '0') + ':' + str(minutes % 60).rjust(2, '0')
print(time)


start = tuple((int(i) for i in input().split(':')))
end = tuple((int(i) for i in input().split(':')))
start_mins = start[0] * 60 + start[1]
end_mins = end[0] * 60 + end[1]
mean = (end_mins + start_mins) // 2
print('{:02d}:{:02d}'.format(mean // 60, mean % 60))


def main():
	S = input()
	T = input()
	(h1, m1) = (int(S[0:2]), int(S[3:]))
	(h2, m2) = (int(T[0:2]), int(T[3:]))
	ti = 60 * (h2 - h1) + (m2 - m1)
	ti //= 2
	ph = ti // 60
	pm = ti % 60
	h1 += ph
	m1 += pm
	if m1 >= 60:
		h1 += m1 // 60
		m1 %= 60
	print('{:02}:{:02}'.format(h1, m1))
main()


def formata(x):
	if x <= 9:
		return '0' + str(x)
	else:
		return str(x)
(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1)
m1 = int(m1)
h2 = int(h2)
m2 = int(m2)
tempo_relativo1 = h1 * 60 + m1
tempo_relativo2 = h2 * 60 + m2
tempo_relativo_resposta = (tempo_relativo1 + tempo_relativo2) // 2
h_resposta = tempo_relativo_resposta // 60
m_resposta = tempo_relativo_resposta % 60
print('{}:{}'.format(formata(h_resposta), formata(m_resposta)))


(a, b) = input().split(':')
(c, d) = input().split(':')
s1 = int(a) * 60 + int(b)
s2 = int(c) * 60 + int(d)
mid = (s1 + s2) / 2
print('%02d:%02d' % (mid // 60, mid % 60))


import os
import sys
debug = True
if debug and os.path.exists('input.in'):
	input = open('input.in', 'r').readline
else:
	debug = False
	input = sys.stdin.readline

def inp():
	return int(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	s = input()
	return s[:len(s) - 1]

def invr():
	return map(int, input().split())
test_count = 1
if debug:
	test_count = inp()
for t in range(test_count):
	if debug:
		print('Test Case #', t + 1)
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	start = h1 * 60 + m1
	end = h2 * 60 + m2
	ans = start + (end - start) // 2
	h = ans // 60
	m = ans % 60
	ans = ''
	if h < 10:
		ans += '0' + str(h)
	else:
		ans += str(h)
	ans += ':'
	if m < 10:
		ans += '0' + str(m)
	else:
		ans += str(m)
	print(ans)


HOUR1 = list(map(int, input().strip().split(':')))
HOUR2 = list(map(int, input().strip().split(':')))
hours = HOUR1[0] + HOUR2[0]
minutes = HOUR1[1] + HOUR2[1]
if minutes >= 60:
	minutes = minutes - 60
	hours = hours + 1
if hours % 2 == 0:
	print('{:02d}:{:02d}'.format(int(hours / 2), int(minutes / 2)))
else:
	hours = hours - 1
	minutes = minutes + 60
	print('{:02d}:{:02d}'.format(int(hours / 2), int(minutes / 2)))


__author__ = 'NIORLYS'
[h1, m1] = list(map(int, input().split(':')))
[h2, m2] = list(map(int, input().split(':')))
if h1 == h2 and m1 <= m2:
	print(h1 // 10, h1 % 10, ':', (m1 + (m2 - m1) // 2) // 10, (m1 + (m2 - m1) // 2) % 10, sep='')
else:
	h = h1
	minutes = 60 - m1 + m2
	h = (h + 1) % 24
	while h != h2:
		minutes += 60
		h = (h + 1) % 24
	h1 = (h1 + minutes // 2 // 60) % 24
	m1 += minutes // 2 % 60
	if m1 >= 60:
		h1 = (h1 + 1) % 24
		m1 %= 60
		print(h1 // 10, h1 % 10, ':', m1 // 10, m1 % 10, sep='')
	else:
		print(h1 // 10, h1 % 10, ':', m1 // 10, m1 % 10, sep='')


(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
x1 = h1 * 60 + m1
x2 = h2 * 60 + m2
h = int((x2 + x1) / 2 // 60)
m = int((x2 + x1) / 2 - h * 60)
print('{:02d}'.format(h) + ':' + '{:02d}'.format(m))


(ax, ay) = [int(x) for x in input().split(':')]
(bx, by) = [int(x) for x in input().split(':')]
ma = 60 * ax + ay
mb = 60 * bx + by
f = ma + mb
f = f // 2
mn = f % 60
t = f // 60
mn = str(mn).rjust(2, '0')
t = str(t).rjust(2, '0')
print(t + ':' + mn)


t1 = input()
t2 = input()
tdh = int(t2[0:2]) - int(t1[0:2])
tdm = int(t2[3:]) - int(t1[3:])
mp = 0
ansh = 0
ansm = 0
if tdh:
	mp = tdh * 60 + tdm
	mp = mp // 2
	ansh = mp // 60
	ansm = mp % 60
else:
	mp = tdm
	mp = mp // 2
	ansh = mp // 60
	ansm = mp % 60
hourtoadd = ansh
mintoadd = ansm
fh = ''
fm = ''
fh = str(int(t1[0:2]) + hourtoadd)
fm = str(int(t1[3:]) + mintoadd)
if int(fm) >= 60:
	fh = str(int(fh) + 1)
	fm = str(int(fm) - 60)
fans = ''
if len(fh) == 1 and len(fm) == 1:
	fans = '0' + fh + ':0' + fm
	print(fans)
elif len(fh) == 1 and len(fm) == 2:
	fans = '0' + fh + ':' + fm
	print(fans)
elif len(fh) == 2 and len(fm) == 1:
	fans = fh + ':0' + fm
	print(fans)
else:
	fans = fh + ':' + fm
	print(fans)


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
start = h1 * 60 + m1
end = h2 * 60 + m2
mid = (start + end) / 2
(h, m) = (int(mid / 60), int(mid % 60))
print('{:02d}:{:02d}'.format(h, m))


t1 = [int(i) for i in input().split(':')]
A1 = 60 * t1[0] + t1[1]
t2 = [int(i) for i in input().split(':')]
A2 = 60 * t2[0] + t2[1]
M = (A1 + A2) // 2
H = M // 60
M = M - H * 60
print(str(H).zfill(2) + ':' + str(M).zfill(2))


hh = ['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23']
mi = ['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59']
(h1, m1) = map(str, input().split(':'))
(h2, m2) = map(str, input().split(':'))
ina = hh.index(h1)
inb = mi.index(m1)
m = 0
while 1 > 0:
	if hh[ina] == h2 and mi[inb] == m2:
		break
	inb += 1
	if inb == 60:
		inb = 0
		ina += 1
	m += 1
m = m // 2
ina = hh.index(h1)
inb = mi.index(m1)
while m > 0:
	inb += 1
	if inb == 60:
		inb = 0
		ina += 1
	m -= 1
print(hh[ina], ':', mi[inb], sep='')


n1 = input().strip().split(':')
n2 = input().strip().split(':')
h1 = int(n1[0])
m1 = int(n1[1])
h2 = int(n2[0])
m2 = int(n2[1])
a = ((h2 - h1) * 60 + (m2 - m1)) / 2
b = a // 60
c = a % 60
res1 = h1 + b
res2 = m1 + c
if res2 >= 60:
	res1 += 1
	res2 = res2 % 60
if res1 < 10:
	res1 = '0' + str(int(res1))
else:
	res1 = str(int(res1))
if res2 < 10:
	res2 = '0' + str(int(res2))
else:
	res2 = str(int(res2))
print(res1 + ':' + res2)


import sys

def calculateMiddle(h1, m1, h2, m2):
	t1 = h1 * 60 + m1
	t2 = h2 * 60 + m2
	dist = t2 - t1
	center = t1 + dist // 2
	return f'{center // 60:02d}' + ':' + f'{center % 60:02d}'
(h1, m1) = map(int, input().rstrip().split(':'))
(h2, m2) = map(int, input().rstrip().split(':'))
print(calculateMiddle(h1, m1, h2, m2))


(h_in, m_in) = map(int, input().split(':'))
(h_end, m_end) = map(int, input().split(':'))
m_in = m_in + h_in * 60
m_end = m_end + h_end * 60
m_med = (m_in + m_end) // 2
print(str(m_med // 60).zfill(2), str(m_med % 60).zfill(2), sep=':')


fir = input()
sec = input()
a = int(sec[0:2])
b = int(fir[0:2])
c = int(sec[3:])
d = int(fir[3:])
sum = ((a - b) * 60 + c - d) / 2
b += sum // 60
d += sum % 60
if d >= 60:
	d -= 60
	b += 1
print('%02d:%02d' % (b, d))


from sys import stdin as sin
(h1, m1) = [int(i) for i in sin.readline().split(':')]
(h2, m2) = [int(i) for i in sin.readline().split(':')]
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
d = (t1 - t2) // 2
t3 = t2 + d
h3 = t3 // 60
m3 = t3 % 60
print('{}:{}'.format(str(h3).zfill(2), str(m3).zfill(2)))


s = input()
h1 = int(s[:2])
m1 = int(s[3:])
s = input()
h2 = int(s[:2])
m2 = int(s[3:])
ans = (h2 * 60 + m2 - h1 * 60 - m1) // 2
ans = ans + h1 * 60 + m1
print(ans // 60 // 10, ans // 60 % 10, ':', ans % 60 // 10, ans % 60 % 10, sep='')


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
m3 = ((h2 - h1) * 60 + (m2 - m1)) / 2
m1 = m1 + m3 % 60
h1 = h1 + m3 // 60 + m1 // 60
m1 = m1 % 60
print('{:02d}:{:02d}'.format(int(h1), int(m1)))


(h1, m1) = input().strip().split(':')
(h2, m2) = input().strip().split(':')
h1 = int(h1)
h2 = int(h2)
m1 = int(m1)
m2 = int(m2)
x1 = h1 * 60 + m1
x2 = h2 * 60 + m2
a = (x2 - x1) / 2 + x1
hours = int(a / 60)
mins = int(a % 60)
if hours < 10:
	hours = '0' + str(hours)
if mins < 10:
	mins = '0' + str(mins)
print(str(hours) + ':' + str(mins))


masuk = str(input()).split(':')
keluar = str(input()).split(':')
masuk1 = int(masuk[0]) * 60 + int(masuk[1])
keluar1 = int(keluar[0]) * 60 + int(keluar[1])
selisih = (keluar1 - masuk1) // 2
selisih += masuk1
if len(str(selisih // 60)) < 2:
	print('0' + str(selisih // 60), end=':')
else:
	print(selisih // 60, end=':')
if len(str(selisih % 60)) < 2:
	print('0' + str(selisih % 60))
else:
	print(selisih % 60)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
a = h1 * 60 + m1
b = h2 * 60 + m2
h3 = int((b + a) / 2 // 60)
h3
m3 = int((b + a) / 2 % 60)
m3

def test(h3):
	return '%02d' % h3

def test(m3):
	return '%02d' % m3
if m3 < 10:
	print(test(h3), end=':')
	print(test(m3))
else:
	print(test(h3), end=':')
	print(test(m3))


h1 = input().split(':')
h2 = input().split(':')
minh1 = int(h1[0]) * 60 + int(h1[1])
minh2 = int(h2[0]) * 60 + int(h2[1])
minh3 = (minh1 + minh2) / 2
h3 = str(int(minh3 / 60))
m3 = str(int(minh3 % 60))
if int(h3) < 10:
	h3 = '0' + h3
if int(m3) < 10:
	m3 = '0' + m3
print(h3 + ':' + m3)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
q1 = h1 * 60 + m1
q2 = h2 * 60 + m2
m = (q2 - q1) // 2
h3 = h1
if m >= 60:
	h3 += m // 60
	m %= 60
m3 = m1 + m
if m3 >= 60:
	h3 += 1
	m3 %= 60
if m3 // 10 == 0:
	m3 = '0' + str(m3)
else:
	m3 = str(m3)
if h3 // 10 == 0:
	h3 = '0' + str(h3)
else:
	h3 = str(h3)
print(h3 + ':' + m3)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
hd = h2 - h1
md = m2 - m1
m3 = ((hd * 60 + md) / 2 + m1) % 60
h3 = ((hd * 60 + md) / 2 + m1) // 60 + h1
print('%02d:%02d' % (h3, m3))


(a, b) = [input() for i in range(2)]
a = a.split(':')
b = b.split(':')
h1 = int(a[0])
m1 = int(a[1])
h2 = int(b[0])
m2 = int(b[1])
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = int(abs(t1 - t2) / 2)
h = h1 + t // 60
m = m1 + t % 60
if m > 59:
	h += 1
	m = m % 60
hs = str(h)
ms = str(m)
if h < 10:
	hs = '0' + str(h)
if m < 10:
	ms = '0' + str(m)
print(hs + ':' + ms)


t = input()
tt = input()
h = t[:2]
hh = tt[:2]
mmm = t[3:]
mm = tt[3:]
time = (int(hh) - int(h)) * 60
if int(mm) >= int(mmm):
	time += int(mm) - int(mmm)
else:
	time += -int(mmm) + int(mm)
time //= 2
ih = time // 60
im = time % 60
ans1 = int(h) + ih
if int(mmm) + im >= 60:
	ans1 += 1
ans2 = (int(mmm) + im) % 60
if ans1 // 10 == 0:
	print('0', end='')
print(str(ans1) + ':', end='')
if ans2 // 10 == 0:
	print('0', end='')
print(ans2)


(hst, mst) = map(int, input().split(':'))
(hfn, mfn) = map(int, input().split(':'))
start = hst * 60 + mst
finish = hfn * 60 + mfn
res = (finish + start) // 2
hres = res // 60
mres = res % 60
print(hres // 10, hres % 10, ':', mres // 10, mres % 10, sep='')


import math
n = str(input())
m = str(input())
h1 = int(n.split(':')[0])
m1 = int(n.split(':')[1])
h2 = int(m.split(':')[0])
m2 = int(m.split(':')[1])
mid1 = (h1 + h2) / 2
mid2 = (m1 + m2) / 2
temp = mid1 - math.floor(mid1)
temp = temp * 60
mid2 = mid2 + temp
mid1 = math.floor(mid1)
if mid2 >= 60:
	mid1 = mid1 + 1
	mid2 = 60 - mid2
mid1 = str(mid1)
mid2 = str(abs(int(mid2)))
if len(mid1) < 2:
	mid1 = '0' + mid1
if len(mid2) < 2:
	mid2 = '0' + mid2
print(mid1[0:2] + ':' + mid2[0:2])


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
sum = h1 * 60 + m1 + h2 * 60 + m2
h3 = int(sum / 120)
m3 = int(sum / 2 % 60)
print('{:0>2d}:{:0>2d}'.format(h3, m3))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
time = 0
if m2 - m1 < 0:
	time = 60 + (m2 - m1)
	if h2 > h1:
		x = h2 - h1 - 1
	else:
		x = 0
	time += x * 60
else:
	time = m2 - m1
	time += (h2 - h1) * 60
time //= 2
diff = time // 60
remain = time % 60
if m1 + remain >= 60:
	m1 += remain
	m1 -= 60
	h1 += diff + 1
else:
	m1 += remain
	h1 += diff
if h1 < 10:
	h1 = '0' + str(h1)
else:
	h1 = str(h1)
if m1 < 10:
	m1 = '0' + str(m1)
else:
	m1 = str(m1)
z = h1 + ':' + m1
print(z)


import sys
t1 = sys.stdin.readline()[:-1].split(':')
t2 = sys.stdin.readline()[:-1].split(':')
hh1 = int(t1[0])
mm1 = int(t1[1])
hh2 = int(t2[0])
mm2 = int(t2[1])
ft1 = hh1 * 60 + mm1
ft2 = hh2 * 60 + mm2
ft = ft2 - ft1
if ft < 0:
	ft = 24 * 60 + ft
ft = ft // 2
fthh = ft // 60
ftmm = ft % 60
hh1 += fthh
mm1 += ftmm
if mm1 > 59:
	mm1 = mm1 % 60
	hh1 += 1
hh1 = hh1 % 24
print(str(hh1).rjust(2, '0') + ':' + str(mm1).rjust(2, '0'))


import sys
from collections import deque, defaultdict as dd
from bisect import bisect, bisect_left, bisect_right, insort, insort_left, insort_right
from itertools import permutations
from datetime import datetime
from math import ceil, sqrt, log, gcd

def ii():
	return int(input())

def si():
	return input()

def mi():
	return map(int, input().split())

def li():
	return list(mi())
abc = 'abcdefghijklmnopqrstuvwxyz'
abd = {'a': 0, 'b': 1, 'c': 2, 'd': 3, 'e': 4, 'f': 5, 'g': 6, 'h': 7, 'i': 8, 'j': 9, 'k': 10, 'l': 11, 'm': 12, 'n': 13, 'o': 14, 'p': 15, 'q': 16, 'r': 17, 's': 18, 't': 19, 'u': 20, 'v': 21, 'w': 22, 'x': 23, 'y': 24, 'z': 25}
mod = 1000000007
inf = float('inf')
vow = ['a', 'e', 'i', 'o', 'u']
(dx, dy) = ([-1, 1, 0, 0], [0, 0, 1, -1])

def read():
	tc = 0
	if tc:
		input = sys.stdin.readline
	else:
		sys.stdin = open('input1.txt', 'r')
		sys.stdout = open('output1.txt', 'w')

def solve():
	(h1, m1) = map(int, input().split(':'))
	(h2, m2) = map(int, input().split(':'))
	if h1 > h2:
		h2 += 24
	if m1 > m2:
		h2 -= 1
		m2 += 60
	s = (h2 - h1) * 60 + (m2 - m1)
	s //= 2
	m1 += s
	h1 += m1 // 60
	m1 %= 60
	if h1 < 10:
		h1 = '0' + str(h1)
	if m1 < 10:
		m1 = '0' + str(m1)
	print(h1, end=':')
	print(m1)
solve()


import datetime
x = datetime.datetime.strptime(input(), '%H:%M')
y = datetime.datetime.strptime(input(), '%H:%M')
total = datetime.timedelta(hours=y.hour + x.hour, minutes=y.minute + x.minute)
total = total / 2
if str(total)[1] == ':':
	print(str(total)[:4].zfill(5))
else:
	print(str(total)[:5])


s = input()
e = input()
(s1, s2) = s.split(':')
(e1, e2) = e.split(':')
s1 = int(s1)
s2 = int(s2)
e1 = int(e1)
e2 = int(e2)
m1 = s1 * 60 + s2
m2 = e1 * 60 + e2
m = (m2 - m1) / 2
ans1 = s1 + int(m / 60)
ans2 = s2 + int(m % 60)
if ans2 >= 60:
	ans2 = ans2 % 60
	ans1 += 1
if ans1 >= 24:
	ans1 = ans1 % 24
ans1 = str(ans1)
ans2 = str(ans2)
if len(ans1) < 2:
	ans1 = '0' + ans1
if len(ans2) < 2:
	ans2 = '0' + ans2
print(ans1 + ':' + ans2)


l = list(map(int, input().split(':')))
d = list(map(int, input().split(':')))
x = (l[0] * 60 + d[0] * 60 + l[1] + d[1]) // 2
xx = str(x // 60)
if len(xx) == 1:
	xx = '0' + xx
yy = str(x % 60)
if len(yy) == 1:
	yy = '0' + yy
print(xx + ':' + yy)


one = input()
two = input()
one = one.split(':')
two = two.split(':')
min1 = int(one[0]) * 60 + int(one[1])
min2 = int(two[0]) * 60 + int(two[1])
ans = min2 - min1
min1 = min1 + ans / 2
hr = int(min1 / 60)
mi = int(min1 - hr * 60)
if hr < 10 and mi < 10:
	print('0' + str(hr) + ':' + '0' + str(mi))
elif hr > 9 and mi < 10:
	print(str(hr) + ':' + '0' + str(mi))
elif hr < 10 and mi > 9:
	print('0' + str(hr) + ':' + str(mi))
else:
	print(str(hr) + ':' + str(mi))


def xx(x):
	if len(x) == 1:
		return '0' + x
	else:
		return x

def findmin(h, m):
	return h * 60 + m

def todate(m):
	print(xx(str(m // 60)) + ':' + xx(str(m % 60)))
(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = findmin(h1, m1)
t2 = findmin(h2, m2)
m = (t1 + t2) // 2
todate(m)


from datetime import timedelta, datetime
st = input()
et = input()
time_format = '%H:%M'
start = datetime.strptime(st, time_format)
end = datetime.strptime(et, time_format)
half_minute = (end - start).total_seconds() / 2
half = start + timedelta(seconds=half_minute)
print(half.strftime(time_format))


s = input()
k = input()
(h1, m1) = tuple(map(int, s.split(':')))
(h2, m2) = tuple(map(int, k.split(':')))
minutes_1 = h1 * 60 + m1
minutes_2 = h2 * 60 + m2
mid = (minutes_1 + minutes_2) // 2
hour = mid // 60
minutes = mid % 60
if len(str(hour)) == 1:
	hour = '0' + str(hour)
if len(str(minutes)) == 1:
	minutes = '0' + str(minutes)
print(str(hour) + ':' + str(minutes))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
hour = h1
minu = m1
if h1 != h2:
	total = int((60 - m1 + m2 + abs(h1 + 1 - h2) * 60) / 2)
else:
	total = int((m2 - m1) / 2)
minu += total
while minu >= 60:
	minu -= 60
	hour += 1
if len(str(hour)) == 1:
	hour = '0' + str(hour)
if len(str(minu)) == 1:
	minu = '0' + str(minu)
print(str(hour) + ':' + str(minu))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
(h3, m3) = map(lambda n: str(n).zfill(2), divmod(t1 + (t2 - t1) // 2, 60))
print(f'{h3}:{m3}')


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
x = a * 60 + b
y = c * 60 + d
x += (y - x) / 2
print(str(int(x / 60)).zfill(2) + ':' + str(int(x % 60)).zfill(2))


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t = t1 + (t2 - t1) // 2
h3 = t // 60
m3 = t % 60
if h3 < 10:
	h3 = str(0) + str(h3)
if m3 < 10:
	m3 = str(0) + str(m3)
print(str(h3) + ':' + str(m3))


from sys import stdin
(h1, m1) = map(int, stdin.readline().strip().split(':'))
(h2, m2) = map(int, stdin.readline().strip().split(':'))
x = 0
if h1 > h2:
	x += 24 - h1
	h1 = 0
x += (h2 - h1) * 60
y = m2 - m1
z = (x + y) // 2
hf = h1 + z // 60
z = z - z // 60 * 60
mf = m1 + z
if mf >= 60:
	hf += 1
	mf -= 60
hf = hf % 24
x = str(hf)
y = str(mf)
if len(x) < 2:
	x = '0' + x
if len(y) < 2:
	y = '0' + y
print(x + ':' + y)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
x = h1 * 60 + m1
y = h2 * 60 + m2
tot = (x + y) // 2
print('%02d:%02d' % (tot // 60, tot % 60))


s1 = input()
s2 = input()
(h1, h2) = (int(s1[0:2]), int(s2[0:2]))
(m1, m2) = (int(s1[3:]), int(s2[3:]))
c3 = (h1 * 60 + m1 + (h2 * 60 + m2)) // 2
if c3 // 60 < 10:
	print('0' + str(c3 // 60) + ':', end='')
else:
	print(str(c3 // 60) + ':', end='')
if c3 % 60 < 10:
	print('0' + str(c3 % 60), end='')
else:
	print(str(c3 % 60), end='')


t1 = input().split(':')
t2 = input().split(':')
h1 = int(t1[0])
m1 = int(t1[1])
h2 = int(t2[0])
m2 = int(t2[1])
ma = (h2 * 60 + m2 - (h1 * 60 + m1)) // 2
init = h1 * 60 + m1
ans = init + ma
tans = []
if ans // 60 < 10:
	tans.append('0' + str(ans // 60))
else:
	tans.append(str(ans // 60))
if ans % 60 < 10:
	tans.append('0' + str(ans % 60))
else:
	tans.append(str(ans % 60))
print(tans[0], end='')
print(':', end='')
print(tans[1])


R = lambda : map(int, input().split(':'))
(h1, m1) = R()
(h2, m2) = R()
s = 60 - m1 + m2 + (h2 - (h1 + 1)) * 60
h = s // 2
m1 = m1 + h
h1 = h1 + m1 // 60
m1 = m1 % 60
if h1 < 10:
	h1 = '0' + str(h1)
else:
	h1 = str(h1)
if m1 < 10:
	m1 = '0' + str(m1)
else:
	m1 = str(m1)
print(h1 + ':' + m1)


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
ta = 60 * a[0] + a[1]
tb = 60 * b[0] + b[1]
tc = (ta + tb) / 2
c = []
c.append(int(tc // 60))
c.append(int(tc % 60))
if c[0] > 9 and c[1] > 9:
	print(c[0], end=':')
	print(c[1])
if c[0] < 10 and c[1] < 10:
	print('0', end='')
	print(c[0], end=':')
	print('0', end='')
	print(c[1])
if c[0] > 9 and c[1] < 10:
	print(c[0], end=':')
	print('0', end='')
	print(c[1])
if c[0] < 10 and c[1] > 9:
	print('0', end='')
	print(c[0], end=':')
	print(c[1])


T1 = input()
T2 = input()
T1 = T1.split(':')
T2 = T2.split(':')
T1[0] = int(T1[0])
T1[1] = int(T1[1])
T2[0] = int(T2[0])
T2[1] = int(T2[1])
mnt = int((T2[1] + T1[1]) / 2)
hr = (T2[0] + T1[0]) / 2
Bug = hr - int(hr)
if Bug % 2 != 0:
	mnt += 30
	if mnt >= 60:
		mnt -= 60
		hr += 1
hr = int(hr)
if hr < 10:
	if mnt < 10:
		print(f'0{hr}:0{mnt}')
	else:
		print(f'0{hr}:{mnt}')
elif mnt < 10:
	print(f'{hr}:0{mnt}')
else:
	print(f'{hr}:{mnt}')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
c = ((h1 + h2) * 60 + m1 + m2) // 2
print('{:02d}:{:02d}'.format(c // 60 % 24, c - 60 * (c // 60)))


def f(n):
	return n * (n - 1) // 2
start = list(map(int, input().split(':')))
end = list(map(int, input().split(':')))
start_minutes = start[0] * 60 + start[1]
end_minutes = end[0] * 60 + end[1]
diff = (end_minutes - start_minutes) // 2
start_minutes += diff
hours = start_minutes // 60
minutes = start_minutes % 60
print('{:02d}'.format(hours) + ':' + '{:02d}'.format(minutes))


(a, b) = map(int, input().split(':'))
(a1, b1) = map(int, input().split(':'))
r = (a1 * 60 + b1 - (b + a * 60)) / 2 + b + a * 60
g = str(int(r // 60))
g1 = str(int(r % 60))
g = '0' * (2 - len(g)) + g
g1 = '0' * (2 - len(g1)) + g1
print(g + ':' + g1)


s = str(input())
e = str(input())
sh = int(s[:s.find(':')])
sm = int(s[s.find(':') + 1:])
eh = int(e[:s.find(':')])
em = int(e[s.find(':') + 1:])
st = 60 * sh + sm
et = 60 * eh + em
mt = abs(et - st) // 2
mh = sh + mt // 60
mm = sm + mt % 60
t = 60 * mh + mm
mh = t // 60
mm = t % 60
mh = str(mh)
mm = str(mm)
if len(mh) == 1:
	print('0' + mh, end=':')
else:
	print(mh, end=':')
if len(mm) == 1:
	print('0' + mm)
else:
	print(mm)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t = divmod((h1 + h2) * 60 + m1 + m2 >> 1, 60)
print('0' * (t[0] <= 9), t[0], ':', '0' * (t[1] <= 9), t[1], sep='')


t = 1
for _ in range(t):
	s1 = input()
	s2 = input()
	h1 = int(s1[:2])
	m1 = int(s1[3:])
	h2 = int(s2[:2])
	m2 = int(s2[3:])
	ans = (h1 + h2) // 2
	rem = (h1 + h2) % 2 * 60
	m = (m1 + m2 + rem) // 2
	if m > 59:
		m -= 60
		ans += 1
	if ans > 9 and m > 9:
		print(str(ans) + ':' + str(m))
	else:
		st1 = st2 = ''
		if ans < 10:
			st1 = '0' + str(ans)
		else:
			st1 = str(ans)
		if m < 10:
			st2 = '0' + str(m)
		else:
			st2 = str(m)
		print(st1 + ':' + st2)


s1 = input()
s2 = input()
l1 = s1.split(':')
h1 = int(l1[0])
m1 = int(l1[1])
l2 = s2.split(':')
h2 = int(l2[0])
m2 = int(l2[1])
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
mid = (t1 + t2) // 2
h = mid // 60
m = mid % 60
hst = str(h)
mst = str(m)
if len(hst) == 1:
	hst = '0' + hst
if len(mst) == 1:
	mst = '0' + mst
ans = hst + ':' + mst
print(ans)


t1 = input()
t2 = input()
m1 = int(t1[:2]) * 60 + int(t1[3:])
m2 = int(t2[:2]) * 60 + int(t2[3:])
m = (m1 + m2) // 2
print('{0:02}:{1:02}'.format(m // 60, m % 60))


import math
start = input()
end = input()
s = start.split(':')
e = end.split(':')
h1 = int(s[0])
m1 = int(s[1])
h2 = int(e[0])
m2 = int(e[1])
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
t = (t1 + t2) / 2
hm = math.floor(t / 60)
mm = math.floor(t - 60 * hm)
print(str(hm).zfill(2) + ':' + str(mm).zfill(2))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
min1 = a * 60 + b
min2 = c * 60 + d
if min1 >= min2:
	min2 += 24 * 60
aver = (min1 + min2) // 2
h = str(aver // 60)
m = str(aver % 60)
print('0' * (2 - len(h)) + h + ':' + '0' * (2 - len(m)) + m)


line = input().split(':')
start_hour = int(line[0])
start_minute = int(line[1])
start_timestamp = 60 * start_hour + start_minute
line = input().split(':')
end_hour = int(line[0])
end_minute = int(line[1])
end_timestamp = 60 * end_hour + end_minute
middle_timestamp = (end_timestamp + start_timestamp) // 2
middle_hour = middle_timestamp // 60
middle_minute = middle_timestamp % 60
print('{:02d}'.format(middle_hour) + ':' + '{:02d}'.format(middle_minute))


t1 = input().split(':')
(h1, m1) = (int(t1[0]), int(t1[1]))
t2 = input().split(':')
(h2, m2) = (int(t2[0]), int(t2[1]))

def convtominutes(h, m):
	mt = m + 60 * h
	return mt

def convfromminutes(mt):
	ht = [mt // 60, mt % 60]
	return ht
ht1 = convtominutes(h1, m1)
ht2 = convtominutes(h2, m2)
hmoy = (ht1 + ht2) / 2
tf = convfromminutes(hmoy)
s = str('{:02d}'.format(int(tf[0]))) + ':' + str('{:02d}'.format(int(tf[1])))
print(s)


q = input()
h1 = int(q[0] + q[1])
m1 = int(q[3] + q[4])
t = h1 * 60 + m1
q = input()
h = int(q[0] + q[1])
m = int(q[3] + q[4])
t = (h * 60 + m - t) / 2 + t
h = int(t / 60)
m = int(t - h * 60)
if h < 10:
	h = '0' + str(h)
else:
	h = str(h)
if m < 10:
	m = '0' + str(m)
else:
	m = str(m)
q = h + ':' + m
print(q)


a = input().split(':')
b = input().split(':')
m = int(a[0]) * 60 + int(a[1]) + int(b[0]) * 60 + int(b[1])
m //= 2
ans = str(m % 60)
if len(ans) == 1:
	ans = '0' + ans
ans = ':' + ans
ans = str(m // 60) + ans
if len(ans) == 4:
	ans = '0' + ans
print(ans)


a = input()
b = input()
h1 = a[:2]
h2 = b[:2]
m1 = a[3:]
m2 = b[3:]
if h1 > h2:
	total = 60 - int(m1) + int(m2) + (24 - int(h1) - int(h2)) * 60
elif h1 == h2:
	total = abs(int(m1) - int(m2))
else:
	total = 60 - int(m1) + int(m2) + abs(int(h1) + 1 - int(h2)) * 60
total = total // 2
h1 = int(h1)
m1 = int(m1)
m1 += total
if m1 >= 60:
	h1 = h1 + m1 // 60
	m1 = m1 % 60
if h1 >= 24:
	h1 = h1 - 24 + 1
if len(str(h1)) == 1:
	print('0' + str(h1) + ':', end='')
else:
	print(str(h1) + ':', end='')
if len(str(m1)) == 1:
	print('0' + str(m1))
else:
	print(str(m1))


a = input().split(':')
b = input().split(':')
min1 = int(a[0]) * 60 + int(a[1])
min2 = int(b[0]) * 60 + int(b[1])
middle = (min1 + min2) // 2
hr = middle // 60
mini = middle % 60
if hr < 10:
	print('0' + str(hr) + ':', end='')
else:
	print(str(hr) + ':', end='')
if mini < 10:
	print('0' + str(mini))
else:
	print(mini)


ha = list(map(int, input().split(':')))
hb = list(map(int, input().split(':')))
(h1, m1) = (ha[0], ha[1])
(h2, m2) = (hb[0], hb[1])
a = h1 * 60 + m1
b = h2 * 60 + m2
c = (a + b) // 2
d = c % 60
c = c // 60
c = str(c)
d = str(d)
s = ''
if len(c) == 1:
	s += '0' + c
else:
	s += c
if len(d) == 1:
	s += ':' + '0' + d
else:
	s += ':' + d
print(s)


a = input().split(':')
b = input().split(':')
for i in range(int(a[0]), int(b[0]) + 1):
	for j in range(60):
		f = int(a[0]) * 60 + int(a[1])
		s = int(b[0]) * 60 + int(b[1])
		time = i * 60 + j
		if time - f == s - time:
			h = i
			m = j
			if h <= 9:
				h = '0' + str(h)
			if m <= 9:
				m = '0' + str(m)
			print(str(h) + ':' + str(m))


a = list(map(int, input().split(':')))
b = list(map(int, input().split(':')))
tt1 = a[0] * 60 + a[1]
tt2 = b[0] * 60 + b[1]
mt = (tt1 + tt2) // 2
h = str(mt // 60)
m = str(mt % 60)
h = (2 - len(h)) * '0' + h
m = (2 - len(m)) * '0' + m
print(h + ':' + m)


f = input()
s = input()
a = int(f[:2])
b = int(f[3:])
c = int(s[:2])
d = int(s[3:])
e = (a + c) // 2
f = (b + d) // 2
if (a + c) % 2 != 0:
	f += 30
	if f >= 60:
		f = f - 60
		e += 1
f = str(f)
e = str(e)
if len(e) < 2:
	e = '0' + e
if len(f) < 2:
	f = '0' + f
print(e + ':' + f)


s1 = input()
s2 = input()
h1 = int(s1[0:2])
m1 = int(s1[3:])
h2 = int(s2[0:2])
m2 = int(s2[3:])
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
res = (t1 + t2) // 2
hour = res // 60
minutes = res % 60
if hour >= 10:
	print(hour, end='')
else:
	print('0', hour, sep='', end='')
print(':', end='')
if minutes >= 10:
	print(minutes, end='')
else:
	print('0', minutes, sep='', end='')


from sys import stdin
s1 = stdin.readline()
s2 = stdin.readline()
a = int(s1[0:2]) * 60 + int(s1[3:])
b = int(s2[0:2]) * 60 + int(s2[3:])
total = (b - a) // 2
a += total
m = str(a // 60)
n = str(a - 60 * (a // 60))
if len(m) == 1:
	m = '0' + m
else:
	pass
if len(n) == 1:
	n = '0' + n
else:
	pass
print(m, end='')
print(':', end='')
print(n)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if h2 > h1:
	min = (m2 + (60 - m1) + 60 * (h2 - h1 - 1)) // 2
else:
	min = (m2 - m1) // 2
m3 = m1 + min
h3 = h1
if m3 >= 60:
	h3 = h3 + m3 // 60
	m3 = m3 % 60
if h3 >= 10 and m3 >= 10:
	print('{}:{}'.format(h3, m3))
elif h3 < 10 and m3 >= 10:
	print('0{}:{}'.format(h3, m3))
elif h3 >= 10 and m3 < 10:
	print('{}:0{}'.format(h3, m3))
else:
	print('0{}:0{}'.format(h3, m3))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
s = a * 60 + b
f = c * 60 + d
ans = s + (f - s) // 2
ansh = str(ans // 60)
ansm = str(ans % 60)
print('0' * (2 - len(ansh)) + ansh, '0' * (2 - len(ansm)) + ansm, sep=':')


(h1, m1) = map(int, input().strip().split(':'))
(h2, m2) = map(int, input().strip().split(':'))
mid = (h1 + h2) * 60 + m1 + m2
mid //= 2
h3 = mid // 60
m3 = mid % 60
print('{:02}:{:02}'.format(h3, m3))


t1 = input()
t2 = input()
h1 = int(t1[0:2])
h2 = int(t2[0:2])
m1 = int(t1[3:5])
m2 = int(t2[3:5])
ans = 0
asf = ''
if h1 == h2:
	ans = m1 + m2
	ans = ans // 2
	if h1 // 10 != 0 and ans // 10 != 0:
		asf = str(h1) + ':' + str(ans)
	elif h1 // 10 != 0 and ans // 10 == 0:
		asf = str(h1) + ':' + '0' + str(ans)
	elif h1 // 10 == 0 and ans // 10 != 0:
		asf = '0' + str(h1) + ':' + str(ans)
	else:
		asf = '0' + str(h1) + ':' + '0' + str(ans)
else:
	ans = 60 - m1
	for i in range(h1 + 1, h2):
		ans += 60
	ans += m2 - 0
	ans = ans // 2
	if ans < 60 - m1:
		k = m1 + ans
		if h1 // 10 != 0 and k // 10 != 0:
			asf = str(h1) + ':' + str(k)
		elif h1 // 10 != 0 and k // 10 == 0:
			asf = str(h1) + ':' + '0' + str(k)
		elif h1 // 10 == 0 and k // 10 != 0:
			asf = '0' + str(h1) + ':' + str(k)
		else:
			asf = '0' + str(h1) + ':' + '0' + str(k)
	else:
		h1 += 1
		ans -= 60 - m1
		if ans - 60 >= 0:
			ans -= 60
			while ans >= 0:
				h1 += 1
				if ans - 60 >= 0:
					ans -= 60
				else:
					break
		k = ans
		if k // 10 != 0 and h1 // 10 != 0:
			asf = str(h1) + ':' + str(k)
		elif k // 10 == 0 and h1 // 10 != 0:
			asf = str(h1) + ':' + '0' + str(k)
		elif k // 10 == 0 and h1 // 10 == 0:
			asf = '0' + str(h1) + ':' + '0' + str(k)
		else:
			asf = '0' + str(h1) + ':' + str(k)
print(asf)


s1 = input().split(':')
s2 = input().split(':')
leng = (60 * (int(s2[0]) - int(s1[0])) + (int(s2[1]) - int(s1[1]))) // 2
print('0' * (2 - len(str(int(s1[0]) + (leng + int(s1[1])) // 60))) + str(int(s1[0]) + (leng + int(s1[1])) // 60) + ':' + '0' * (2 - len(str((int(s1[1]) + leng) % 60))) + str((int(s1[1]) + leng) % 60))


s = input()
t = input()
(h1, m1) = (10 * int(s[0]) + int(s[1]), 10 * int(s[3]) + int(s[4]))
(h2, m2) = (10 * int(t[0]) + int(t[1]), 10 * int(t[3]) + int(t[4]))
diff = 0
d = {}
while h1 != h2 or m1 != m2:
	d[diff] = (h1, m1)
	m1 = (m1 + 1) % 60
	if m1 == 0:
		h1 = (h1 + 1) % 24
	diff += 1
(h1, m1) = (d[diff // 2][0], d[diff // 2][1])
h1 = str(h1)
if int(h1) < 10:
	h1 = '0' + h1
m1 = str(m1)
if int(m1) < 10:
	m1 = '0' + m1
print(h1 + ':' + m1)


start = input().split(':')
(start[0], start[1]) = (int(start[0]), int(start[1]))
end = input().split(':')
(end[0], end[1]) = (int(end[0]), int(end[1]))
time1 = start[0] * 60 + start[1]
time2 = end[0] * 60 + end[1]
h = int((time1 + (time2 - time1) / 2) // 60)
m = int((time1 + (time2 - time1) / 2) % 60)
hh = str(h)
mm = str(m)
if h // 10 == 0:
	hh = '0' + str(h)
if m // 10 == 0:
	mm = '0' + str(m)
print(hh + ':' + mm)


s1 = input()
s2 = input()
(a, b) = s1.split(':')
(c, d) = s2.split(':')
(a, b, c, d) = (int(a), int(b), int(c), int(d))
hrs = (c - a) * 60
min = d - b
tot = (min + hrs) // 2
final_hrs = tot // 60
final_min = tot - final_hrs * 60
a += final_hrs
b += final_min
if b > 59:
	a += 1
	b -= 60
a = str(a)
b = str(b)
a = (2 - len(a)) * '0' + a
b = (2 - len(b)) * '0' + b
print(str(a) + ':' + str(b))


def contest_time():
	time1 = input()
	time2 = input()
	timeA = int(time1[0]) * 600 + int(time1[1]) * 60 + int(time1[3]) * 10 + int(time1[4])
	timeB = int(time2[0]) * 600 + int(time2[1]) * 60 + int(time2[3]) * 10 + int(time2[4])
	hour_24 = int(time1[0])
	hour = int(time1[1])
	minute_60 = int(time1[3])
	minute = int(time1[4])
	for i in range(int((timeB - timeA) / 2)):
		minute += 1
		if minute == 10:
			minute = 0
			minute_60 += 1
		if minute_60 == 6:
			minute_60 = 0
			hour += 1
		if hour == 10:
			hour = 0
			hour_24 += 1
	print(str(hour_24) + str(hour) + ':' + str(minute_60) + str(minute))
contest_time()


inp1 = str(input()).split(':')
inp2 = str(input()).split(':')
h1 = int(inp1[0])
m1 = int(inp1[1])
h2 = int(inp2[0])
m2 = int(inp2[1])
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
mid = (time1 + time2) / 2
hour = int(mid / 60)
minut = int(mid % 60)
if minut <= 9 and hour <= 9:
	print('0' + str(hour) + ':' + '0' + str(minut))
elif minut <= 9 and hour > 9:
	print(str(hour) + ':' + '0' + str(minut))
elif hour <= 9 and minut > 9:
	print('0' + str(hour) + ':' + str(minut))
else:
	print(str(hour) + ':' + str(minut))


t1 = list(map(int, input().split(':')))
t2 = list(map(int, input().split(':')))
t11 = t1[0] * 60 + t1[1]
t22 = t2[0] * 60 + t2[1]
diff = t22 - t11
mid = t11 + diff // 2
mid1 = mid // 60
mid2 = mid % 60
if mid1 // 10 == 0:
	mid1 = '0' + str(mid1)
if mid2 // 10 == 0:
	mid2 = '0' + str(mid2)
print(str(mid1) + ':' + str(mid2))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
s = 60 * h1 + m1
e = 60 * h2 + m2
m = (s + e) / 2
tim = 0
while m > 59:
	m -= 60
	tim += 1
print(str(int(tim)).zfill(2), ':', str(int(m)).zfill(2), sep='')


s1 = str(input())
s2 = str(input())
h1 = int(s1[:2])
m1 = int(s1[3:])
h2 = int(s2[:2])
m2 = int(s2[3:])
t = 60 * ((h2 - h1) % 24) + m2 - m1
t //= 2
h = h1 + (m1 + t) // 60
h %= 24
m = (m1 + t) % 60
if h < 10:
	print('0', end='')
print(h, end=':')
if m < 10:
	print('0', end='')
print(m)


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
diff = 60 * (h2 - h1 - 1)
diff = max(0, diff)
if h1 == h2:
	diff += m2 - m1
else:
	diff += 60 - m1 + m2
diff //= 2
hrs = diff // 60
h1 += hrs
m1 += diff % 60
hrs = m1 // 60
h1 += hrs
m1 %= 60
hp = ''
mp = ''
if h1 // 10 == 0:
	hp = '0'
if m1 // 10 == 0:
	mp = '0'
print('{}{}:{}{}'.format(hp, h1, mp, m1))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
e = 60 * (a + c) + b + d
print(f'{e // 120:02}:{e // 2 % 60:02}')


data1In = input()
data2In = input()
h1 = int(data1In[0] + data1In[1])
m1 = int(data1In[3] + data1In[4])
h2 = int(data2In[0] + data2In[1])
m2 = int(data2In[3] + data2In[4])
time1 = h1 * 60 + m1
time2 = h2 * 60 + m2
center = (time1 + time2) / 2
hc = center // 60
mc = center % 60
print(int(hc // 10), int(hc % 10), ':', int(mc // 10), int(mc % 10), sep='')


s1 = input()
s2 = input()
t1 = s1.split(':')
t2 = s2.split(':')
h1 = int(t1[0])
h2 = int(t2[0])
m1 = int(t1[1])
m2 = int(t2[1])
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
half = (t2 - t1) // 2
t1 += half
h_ans = t1 // 60
m_ans = t1 % 60
h_ans = str(h_ans)
if len(h_ans) == 1:
	h_ans = '0' + h_ans
m_ans = str(m_ans)
if len(m_ans) == 1:
	m_ans = '0' + m_ans
print(h_ans, end='')
print(':', end='')
print(m_ans)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
diff = ((h2 - h1) * 60 + m2 - m1) / 2
while diff > 0:
	m1 = (m1 + 1) % 60
	if m1 == 0:
		h1 += 1
	diff -= 1
to_hour = lambda x: '0' + str(x) if x < 10 else str(x)
print('{}:{}'.format(to_hour(h1), to_hour(m1)))


(h1, m1) = input().split(':')
(h1, m1) = (int(h1), int(m1))
(h2, m2) = input().split(':')
(h2, m2) = (int(h2), int(m2))
if h1 > h2:
	h2 += 24
demiDuree = int((h2 - h1) * 60 + (m2 - m1)) / 2
h3 = h1 + int(demiDuree / 60)
m3 = m1 + demiDuree % 60
if m3 >= 60:
	h3 += 1
	m3 -= 60
if h3 >= 24:
	h3 -= 24
rep = ''
if m3 < 10:
	m3 = '0' + str(int(m3))
else:
	m3 = str(int(m3))
if h3 < 10:
	h3 = '0' + str(h3)
else:
	h3 = str(h3)
print(h3 + ':' + m3)


from sys import stdin, stdout
from itertools import combinations
from collections import defaultdict

def listIn():
	return list(map(int, stdin.readline().strip().split()))

def stringListIn():
	return [x for x in stdin.readline().split()]

def intIn():
	return int(stdin.readline())

def stringIn():
	return stdin.readline().strip()
s1 = stringIn()
s2 = stringIn()
(h1, h2) = (int(s1[:2]), int(s2[:2]))
(t1, t2) = (int(s1[3:]), int(s2[3:]))
if h2 < h1:
	h2 += 24
tt1 = h1 * 60 + t1
tt2 = h2 * 60 + t2
diff = (tt2 - tt1) // 2
ans = tt1 + diff
res = ans // 60
if res >= 24:
	res -= 24
res2 = ans % 60
if res < 10:
	res = '0' + str(res)
if res2 < 10:
	res2 = '0' + str(res2)
f = str(res) + ':' + str(res2)
print(f)


a = input()
b = input()
h1 = int(a[0:2])
m1 = int(a[3:])
h2 = int(b[0:2])
m2 = int(b[3:])
xa = (h1 + h2) // 2
minadd = h1 + h2 - 2 * xa
xx = m1 + m2
xb = xx + minadd * 60
xb = xb // 2
if xb > 59:
	xb -= 60
	xa += 1
ansh = ''
ansm = ''
if xa <= 9:
	ansh += '0' + str(xa)
else:
	ansh += str(xa)
if xb <= 9:
	ansm += '0' + str(xb)
else:
	ansm += str(xb)
print(ansh + ':' + ansm)


l1 = list(map(int, input().split(':')))
l2 = list(map(int, input().split(':')))
t1 = l1[0] * 60 + l1[1]
t2 = l2[0] * 60 + l2[1]
t3 = (t1 + t2) // 2
hrs = t3 // 60
mins = t3 % 60
if hrs < 10:
	hrs = '0' + str(hrs)
if mins < 10:
	mins = '0' + str(mins)
print(str(hrs) + ':' + str(mins))


a = input().split(':')
c = input().split(':')
m1 = int(int(a[1]) + 60 * int(a[0]))
m2 = int(int(c[1]) + 60 * int(c[0]))
mmoy = (m1 + m2) / 2
hul = mmoy // 60
mul = mmoy - 60 * hul
mul = str(int(mul))
hul = str(int(hul))
if len(hul) == 1:
	hul = '0' + hul
if len(mul) == 1:
	mul = '0' + mul
print(hul, ':', mul, sep='')


def toInt(s):
	(h, m) = map(int, s.split(':'))
	return h * 60 + m

def toTime(i):
	return '{}:{}'.format(str(i // 60).zfill(2), str(i % 60).zfill(2))
print(toTime((toInt(input()) + toInt(input())) // 2))


x1 = input()
x2 = input()
(h1, m1) = (int(x1[0:2]), int(x1[3:5]))
(h2, m2) = (int(x2[0:2]), int(x2[3:5]))
di = (h2 - h1) * 60 + m2 - m1
di /= 2
if di + m1 < 60:
	m1 += di
else:
	while di >= 60:
		h1 += 1
		di -= 60
	if di + m1 < 60:
		m1 += di
	else:
		h1 += 1
		m1 = di + m1 - 60
if h1 < 10:
	h1 = '0' + str(h1)
if m1 < 10:
	m1 = '0' + str(int(m1))
else:
	m1 = int(m1)
print(str(h1) + ':' + str(m1))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t3 = (t1 + t2) // 2
h3 = t3 // 60
m3 = int(t3 % 60)
print(f'{h3:02}:{m3:02}')


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t3 = (t1 + t2) // 2
s1 = '00' + str(t3 // 60)
s2 = '00' + str(t3 % 60)
print(s1[-2] + s1[-1] + ':' + s2[-2] + s2[-1])


a = input()
k = input()
b = int(a[0:2])
c = int(a[3:5])
d = int(k[0:2])
e = int(k[3:5])
f = (b + d) / 2
i = (f - int(f)) * 60
jisan = int(f)
jisan2 = int(i + (c + e) / 2)
if jisan2 % 60 != jisan2:
	jisan = jisan + int(jisan2 / 60)
	jisan2 = jisan2 % 60
if len(str(jisan)) == 1:
	jisan = '0' + str(jisan)
if len(str(jisan2)) == 1:
	jisan2 = '0' + str(jisan2)
print(jisan, end='')
print(':', end='')
print(jisan2)


(a1, b1) = map(int, input().split(':'))
(a2, b2) = map(int, input().split(':'))
c1 = a1 * 60 + b1
c2 = a2 * 60 + b2
c3 = (c1 + c2) // 2
if c3 // 60 < 10:
	a = '0'
	a += str(c3 // 60)
else:
	a = str(c3 // 60)
if c3 % 60 < 10:
	b = '0'
	b += str(c3 % 60)
else:
	b = str(c3 % 60)
print(a + ':' + b)


c = input()
d = input()
a = []
b = []
a[:0] = c
b[:0] = d
a1 = int(a[0] + a[1])
a2 = int(a[3] + a[4])
b1 = int(b[0] + b[1])
b2 = int(b[3] + b[4])
e = a1 * 60 + a2 + int((b1 * 60 + b2 - (a1 * 60 + a2)) / 2)
e1 = int(e / 60)
e2 = int(e % 60)
if e1 < 10:
	e1 = '0' + str(e1)
if e2 < 10:
	e2 = '0' + str(e2)
print(str(e1) + ':' + str(e2))


t1 = input()
t2 = input()
t1 = [int(x) for x in t1.split(':')]
t2 = [int(x) for x in t2.split(':')]
m1 = t1[0] * 60 + t1[1]
m2 = t2[0] * 60 + t2[1]
mid = (m1 + m2) // 2
h = mid // 60
m = mid % 60
if h < 10:
	print(0, end='')
print(h, end='')
print(':', end='')
if m < 10:
	print(0, end='')
print(m, end='')


from collections import defaultdict, Counter
from itertools import product, groupby, count, permutations, combinations
from math import pi, sqrt, sin, cos, ceil, floor
from collections import deque
from bisect import bisect, bisect_left, bisect_right
from string import ascii_lowercase
from functools import lru_cache
import sys
sys.setrecursionlimit(1000000000)
INF = float('inf')
(YES, Yes, yes, NO, No, no) = ('YES', 'Yes', 'yes', 'NO', 'No', 'no')
(dy4, dx4) = ([0, 1, 0, -1], [1, 0, -1, 0])
(dy8, dx8) = ([0, -1, 0, 1, 1, -1, -1, 1], [1, 0, -1, 0, 1, 1, -1, -1])

def inside(y, x, H, W):
	return 0 <= y < H and 0 <= x < W

def ceil(a, b):
	return (a + b - 1) // b

def gcd(a, b):
	if b == 0:
		return a
	return gcd(b, a % b)

def lcm(a, b):
	g = gcd(a, b)
	return a / g * b

def euclidean_distance(y1, x1, y2, x2):
	return sqrt((y1 - y2) ** 2 + (x1 - x2) ** 2)

def manhattan_distance(y1, x1, y2, x2):
	return abs(y1 - y2) + abs(x1 - x2)

def main():
	(h1, m1) = map(int, input().strip().split(':'))
	(h2, m2) = map(int, input().strip().split(':'))
	t1 = h1 * 60 + m1
	t2 = h2 * 60 + m2
	middle = (t2 - t1) // 2
	m1 += middle
	h1 += m1 // 60
	m1 %= 60
	print(f'{h1:02d}:{m1:02d}')
main()


(start_hour, start_minute) = list(map(int, list(input().split(':'))))
(end_hour, end_minute) = list(map(int, list(input().split(':'))))
start_time = start_hour * 60 + start_minute
end_time = end_hour * 60 + end_minute
middle_time = start_time + (end_time - start_time) // 2
result_hour = middle_time // 60
result_minute = middle_time % 60
if result_hour < 10:
	result_hour = '0' + str(result_hour)
else:
	result_hour = str(result_hour)
if result_minute < 10:
	result_minute = '0' + str(result_minute)
else:
	result_minute = str(result_minute)
print(result_hour + ':' + result_minute)


a = input().split(':')
b = input().split(':')
a[0] = int(a[0])
a[1] = int(a[1])
b[0] = int(b[0])
b[1] = int(b[1])
hour = b[0] - a[0]
min = b[1] - a[1]
diff = hour * 60 + min
new_min = a[1] + int(diff / 2)
new_hour = a[0]
while new_min > 59:
	new_min = new_min - 60
	new_hour = new_hour + 1
if new_hour < 10:
	new_hour = '0' + str(new_hour)
if new_min < 10:
	new_min = '0' + str(new_min)
print(new_hour, ':', new_min, sep='')


s1 = input()
s2 = input()
h1 = int(s1.split(':')[0])
m1 = int(s1.split(':')[1])
h2 = int(s2.split(':')[0])
m2 = int(s2.split(':')[1])
t1 = 60 * h1 + m1
t2 = 60 * h2 + m2
tt = t1 + t2
tt = tt / 2
th = tt // 60
tm = tt % 60
print('0' * (2 - len(str(int(th)))) + str(int(th)) + ':' + '0' * (2 - len(str(int(tm)))) + str(int(tm)))


(a, b) = map(float, input().split(':'))
(a1, b1) = map(float, input().split(':'))
minut1 = (a * 60 + b + (a1 * 60 + b1)) / 2
hour = str(int(minut1 // 60))
mi = str(int(minut1 - int(hour) * 60))
if len(hour) == 1 and len(mi) > 1:
	print('0' + hour + ':' + mi)
elif len(hour) == 1 and len(mi) == 1:
	print('0' + hour + ':' + '0' + mi)
elif len(hour) > 1 and len(mi) == 1:
	print(hour + ':' + '0' + mi)
else:
	print(hour + ':' + mi)


h1 = list(map(int, input().split(':')))
h2 = list(map(int, input().split(':')))
m1 = h1[0] * 60 + h1[1]
m2 = h2[0] * 60 + h2[1]
s = (m1 + m2) // 2
if len(str(s // 60)) == 1 and len(str(s % 60)) == 1:
	print('0' + str(s // 60) + ':0' + str(s % 60))
elif len(str(s // 60)) == 1:
	print('0' + str(s // 60) + ':' + str(s % 60))
elif len(str(s % 60)) == 1:
	print(str(s // 60) + ':0' + str(s % 60))
else:
	print(str(s // 60) + ':' + str(s % 60))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
t = h2 * 60 + m2 - (h1 * 60 + m1)
t //= 2
(q, r) = divmod(t, 60)
if m1 + r >= 60:
	q += 1
	r -= 60
ans = str(h1 + q).zfill(2) + ':' + str(m1 + r).zfill(2)
print(ans)


s = input()
e = input()
hour_s = int(s[0:2])
hour_e = int(e[0:2])
min_s = int(s[3:5])
min_e = int(e[3:5])
all_hour = hour_e - hour_s
all_min = min_e - min_s
if all_min < 0:
	all_min += 60
	all_hour -= 1
if all_hour % 2 == 1:
	all_hour -= 1
	all_min += 60
all_hour = int(all_hour / 2)
all_min = int(all_min / 2)
hour_s += all_hour
min_s += all_min
if min_s >= 60:
	min_s -= 60
	hour_s += 1
if hour_s < 10:
	print(0, end='')
print(hour_s, end='')
print(':', end='')
if min_s < 10:
	print(0, end='')
print(min_s)


(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
y = (60 * (h1 + h2) + m1 + m2) // 2
c = y // 60
k = y % 60
if c / 10 < 1:
	c = '0' + str(c)
if k / 10 < 1:
	k = '0' + str(k)
print(str(c) + ':' + str(k))


s1 = input().split(':')
s2 = input().split(':')
(h1, m1) = (int(s1[0]), int(s1[1]))
(h2, m2) = (int(s2[0]), int(s2[1]))
t = (h2 - h1) * 60
t += m2 - m1
(h, m) = (h1 + (m1 + t // 2) // 60, (m1 + t // 2) % 60)
if h < 10:
	if m < 10:
		print('0{}:0{}'.format(h, m))
	else:
		print('0{}:{}'.format(h, m))
elif m < 10:
	print('{}:0{}'.format(h, m))
else:
	print('{}:{}'.format(h, m))


def time(h1, m1):
	return h1 * 60 + m1

def back(tim):
	return [tim // 60, tim % 60]
(h1, m1) = list(map(int, input().split(':')))
(h2, m2) = list(map(int, input().split(':')))
(h3, m3) = back((time(h1, m1) + time(h2, m2)) // 2)
if len(str(h3)) == 1:
	h3 = '0' + str(h3)
if len(str(m3)) == 1:
	m3 = '0' + str(m3)
print(f'{h3}:{m3}')


st = list(map(int, input().split(':')))
en = list(map(int, input().split(':')))
u = 60 * st[0] + st[1]
v = 60 * en[0] + en[1]
x = (u + v) // 2
h = x // 60
m = x % 60
st_h = str(h)
if len(st_h) == 1:
	st_h = '0' + st_h
st_m = str(m)
if len(st_m) == 1:
	st_m = '0' + st_m
print(st_h + ':' + st_m)


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
if m1 > m2:
	m_diff = (h2 - h1 - 1) * 60 + 60 - m1 + m2
else:
	m_diff = (h2 - h1) * 60 + abs(m2 - m1)
m_diff = m_diff // 2
hr = m_diff // 60
miin = m_diff % 60
h = h1 + hr
m = m1 + miin
if m >= 60:
	if m == 60:
		h = h + 1
		m11 = '00'
	if m > 60:
		h = h + 1
		m = m - 60
		m11 = str(m)
else:
	m11 = str(m)
if m == 0 or m == 1 or m == 2 or (m == 3) or (m == 4) or (m == 5) or (m == 6) or (m == 7) or (m == 8) or (m == 9):
	if m == 1:
		m11 = '01'
	if m == 2:
		m11 = '02'
	if m == 3:
		m11 = '03'
	if m == 4:
		m11 = '04'
	if m == 5:
		m11 = '05'
	if m == 6:
		m11 = '06'
	if m == 7:
		m11 = '07'
	if m == 8:
		m11 = '08'
	if m == 9:
		m11 = '09'
	if m == 0:
		m11 = '00'
if h == 0 or h == 1 or h == 2 or (h == 3) or (h == 4) or (h == 5) or (h == 6) or (h == 7) or (h == 8) or (h == 9):
	if h == 1:
		h11 = '01'
	if h == 2:
		h11 = '02'
	if h == 3:
		h11 = '03'
	if h == 4:
		h11 = '04'
	if h == 5:
		h11 = '05'
	if h == 6:
		h11 = '06'
	if h == 7:
		h11 = '07'
	if h == 8:
		h11 = '08'
	if h == 9:
		h11 = '09'
	if h == 0:
		h11 = '00'
else:
	h11 = str(h)
print(h11, end='')
print(':', end='')
print(m11, end='')


t1 = input()
t2 = input()
h1 = int(t1[0] + t1[1])
m1 = int(t1[3] + t1[4])
h2 = int(t2[0] + t2[1])
m2 = int(t2[3] + t2[4])
sum = (h1 * 60 + h2 * 60 + m1 + m2) / 2
if sum / 60 < 10 and sum % 60 < 10:
	print('0{}:0{}\n'.format(int(sum / 60), int(sum % 60)))
elif sum / 60 < 10 and sum % 60 >= 10:
	print('0{}:{}\n'.format(int(sum / 60), int(sum % 60)))
elif sum / 60 >= 10 and sum % 60 < 10:
	print('{}:0{}\n'.format(int(sum / 60), int(sum % 60)))
else:
	print('{}:{}\n'.format(int(sum / 60), int(sum % 60)))


a = input()
b = input()
x = a.split(':')
y = b.split(':')
i = int(x[0]) * 60 + int(x[1])
j = int(y[0]) * 60 + int(y[1])
res = int((i + j) / 2)
ans = ''
h = str(int(res / 60))
if len(h) < 2:
	h = '0' + h
ans += h
ans += ':'
m = str(int(res % 60))
if len(m) < 2:
	m = '0' + m
ans += m
print(ans)


t1 = str(input())
t2 = str(input())
t1 = t1.split(':')
t2 = t2.split(':')
av = (int(t1[0]) * 60 + int(t1[1]) + int(t2[0]) * 60 + int(t2[1])) / 2
hour = int(av / 60)
minute = int(av % 60)
if hour < 10:
	hour = '0' + str(hour)
if minute < 10:
	minute = '0' + str(minute)
print(str(hour) + ':' + str(minute))


(a, b) = map(int, input().split(':'))
(c, d) = map(int, input().split(':'))
t = 60 - b + (c - a - 1) * 60 + d
t = t // 2
n = a * 60 + b + t
p = n % 60
r = n // 60
if r < 10:
	print('0', end='')
if p < 10:
	print(r, end='')
	print(':0', end='')
	print(p, end='')
else:
	print(r, end='')
	print(':', end='')
	print(p, end='')


(n1, q1) = (int(i) for i in input().strip().split(':'))
(n2, q2) = (int(i) for i in input().strip().split(':'))
mid = (n2 * 60 - n1 * 60 + q2 - q1) / 2 + n1 * 60 + q1
n3 = str(int(mid // 60))
q3 = str(int(mid % 60))
if len(n3) == 1:
	n3 = '0' + n3
if len(q3) == 1:
	q3 = '0' + q3
print(n3 + ':' + q3)


x = input()
h1 = int(x[0:2])
m1 = int(x[3:5])
y = input()
h2 = int(y[0:2])
m2 = int(y[3:5])
h3 = (60 * h1 + m1 + 60 * h2 + m2) // 2
h = str(h3 // 60)
m = str(h3 % 60)
if len(h) != 2:
	h = '0' + h
if len(m) != 2:
	m = '0' + m
print(h + ':' + m)


import math
inicio = list(input())
final = input()
h1 = int('' + inicio[0] + inicio[1]) * 60 * 60
m1 = int('' + inicio[3] + inicio[4]) * 60
h2 = int('' + final[0] + final[1]) * 60 * 60
m2 = int('' + final[3] + final[4]) * 60
h = 0
m = 0
segs = (h1 + m1 + h2 + m2) / 2
a = segs / 3600
h = math.floor(a)
m = round(float('0.' + str(a).split('.')[1]) * 60)
if len(str(h)) == 1:
	print('0', end='')
print(h, end=':')
if len(str(m)) == 1:
	print('0', end='')
print(m)


def print_it(n):
	if len(str(n)) == 2:
		print(n, end='')
	else:
		print('0' + str(n), end='')
while True:
	start = input().split(':')
	end = input().split(':')
	minutes = 60 * (int(end[0]) - int(start[0])) + (int(end[1]) - int(start[1]))
	total_minutes = int(start[0]) * 60 + int(start[1]) + minutes // 2
	print_it(total_minutes // 60)
	print(':', end='')
	print_it(total_minutes % 60)
	print()
	break


(a, c) = input().split(':')
(d, f) = input().split(':')
mint = ((int(d) - int(a)) * 60 + int(f) - int(c)) // 2
x = int(a) * 60 + int(c)
mint = mint + x
hr = mint // 60
minte = mint % 60
if hr // 10 == 0:
	hr = '%02d' % hr
if minte // 10 == 0:
	minte = '%02d' % minte
print(str(hr) + ':' + str(minte))


def f():
	first = input()
	second = input()
	one = int(first[0:2])
	two = int(first[3:])
	three = int(second[0:2])
	four = int(second[3:])
	difference = 0
	if two <= four:
		difference = (three - one) * 60 + (four - two)
	else:
		difference = (three - one) * 60 - (two - four)
	difference /= 2
	hour = difference / 60
	minute = difference % 60
	one += hour
	two += minute
	if two >= 60:
		one += 1
		two -= 60
	one = int(one)
	two = int(two)
	if one < 10 and two < 10:
		print('0' + str(one) + ':' + '0' + str(two))
	elif one >= 10 and two >= 10:
		print(str(one) + ':' + str(two))
	elif one >= 10 and two < 10:
		print(str(one) + ':' + '0' + str(two))
	else:
		print('0' + str(one) + ':' + str(two))
f()


start = input()
end = input()
minutes = int(start[:2]) * 60 + int(start[3:]) + (int(end[:2]) * 60 + int(end[3:]) - int(start[:2]) * 60 - int(start[3:])) // 2
hour = str(minutes // 60)
minute = str(minutes % 60)
if int(hour) <= 9:
	hour = '0' + hour
if int(minute) <= 9:
	minute = '0' + minute
print(hour + ':' + minute)


(st_h, st_m) = map(int, input().split(':'))
(en_h, en_m) = map(int, input().split(':'))
avg = (st_h * 60 + st_m + (en_h * 60 + en_m)) // 2
print('{:02d}'.format(avg // 60) + ':' + '{:02d}'.format(avg % 60))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
mint = (h2 - h1) * 60 + (m2 - m1)
mint = mint // 2
hr = mint // 60
min = mint % 60
h1 += hr
m1 += min
if m1 >= 60:
	h1 += 1
	m1 -= 60
(h1, m1) = (str(h1), str(m1))
print('0' * (2 - len(h1)) + h1 + ':' + '0' * (2 - len(m1)) + str(m1))


import sys

def input():
	return sys.stdin.readline().strip()
(t1h, t1m) = map(int, input().split(':'))
(t2h, t2m) = map(int, input().split(':'))
dif = 0
if t1h > t2h:
	t1h -= 24
elif t1h == t2h and t1m > t2m:
	t1h -= 24
dif += (t2h - t1h) * 60 + t2m - t1m
dif = dif // 2
t1h += dif // 60
t1m += dif % 60
if t1m > 59:
	t1m -= 60
	t1h += 1
while t1h < 0:
	t1h += 24
while t1h >= 24:
	t1h -= 24
t1h = list(str(t1h))
t1m = list(str(t1m))
while len(t1h) < 2:
	t1h = [0] + t1h
while len(t1m) < 2:
	t1m = [0] + t1m
print(str(t1h[0]) + str(t1h[1]) + ':' + str(t1m[0]) + str(t1m[1]))


g = input()
f = input()
h = int(f[0:2]) - int(g[0:2])
m = int(f[3:]) - int(g[3:])
d = (h * 60 + m) // 2
d = d + int(g[3:])
a = int(g[0:2]) + d // 60
b = d % 60
if int(g[0:2]) + d // 60 <= 9:
	a = '0' + str(int(g[0:2]) + d // 60)
if d % 60 <= 9:
	b = '0' + str(d % 60)
print(a, b, sep=':')


(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
h1 = int(h1)
m2 = int(m2)
h2 = int(h2)
m1 = int(m1)
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
t3 = t1 + t2
t3 = t3 // 2
h3 = t3 // 60
m3 = t3 % 60
if h3 > 9:
	print(h3, end=':')
	if m3 > 9:
		print(m3)
	else:
		print('0', m3, sep='')
else:
	print('0', h3, sep='', end=':')
	if m3 > 9:
		print(m3)
	else:
		print('0', m3, sep='')


x = input()
y = input()
s1 = x.split(':')
s2 = y.split(':')
c = 0
t = 0
if int(s1[0]) + 1 != int(s2[0]):
	if (int(s1[0]) + int(s2[0])) % 2 != 0:
		t = 1
	z = (int(s1[0]) + int(s2[0])) // 2
else:
	z = int(s1[0])
	c = 1
q = (int(s1[1]) + int(s2[1])) // 2
if c == 1:
	q = q + 30
	if q >= 60:
		q = q - 60
		z = z + 1
if t == 1:
	q = q + 30
	if q >= 60:
		q = q - 60
		z = z + 1
ans = ''
if z < 10:
	ans = ans + '0' + str(z)
else:
	ans = ans + str(z)
if q < 10:
	ans = ans + ':' + '0' + str(q)
else:
	ans = ans + ':' + str(q)
print(ans)


time1 = input().split(':')
time2 = input().split(':')
last_min = (int(time2[0]) - int(time1[0])) * 60 + (int(time2[1]) - int(time1[1]))
middle_last_min = last_min / 2
all_min = middle_last_min + int(time1[1])
middle_hou = int(time1[0]) + int(all_min / 60)
middle_min = int(all_min % 60)
if middle_hou < 10 and middle_min < 10:
	print('0', middle_hou, ':', '0', middle_min, sep='')
elif middle_hou < 10:
	print('0', middle_hou, ':', middle_min, sep='')
elif middle_min < 10:
	print(middle_hou, ':', '0', middle_min, sep='')
else:
	print(middle_hou, ':', middle_min, sep='')


(h1, m1) = (int(i) for i in input().split(':'))
(h2, m2) = (int(i) for i in input().split(':'))
time = (h2 - h1) * 60 - m1 + m2
m1 += time // 2
h1 += m1 // 60
m1 = m1 % 60
print(f'{h1:02}:{m1:02}')


(h1, m1) = [int(x) for x in input().split(':')]
(h2, m2) = [int(x) for x in input().split(':')]
t1 = h1 * 60 + m1
t2 = h2 * 60 + m2
req = (t1 + t2) // 2
reqh = str(req // 60)
reqm = str(req % 60)
if len(reqh) == 1:
	reqh = '0' + reqh
if len(reqm) == 1:
	reqm = '0' + reqm
print(str(reqh) + ':' + str(reqm))


(h1, m1) = [int(i) for i in input().split(':')]
(h2, m2) = [int(i) for i in input().split(':')]
ms = h1 * 60 + m1 + ((h2 - h1) * 60 + m2 - m1) // 2
h = ms // 60
m = ms % 60
m = str(m)
h = str(h)
while len(m) < 2:
	m = '0' + m
while len(h) < 2:
	h = '0' + h
print('%s:%s' % (h, m))


import sys
import bisect
import heapq
from math import *
from collections import Counter as counter
from itertools import combinations as comb
from itertools import permutations as permutate
from bisect import bisect_left as bl
from bisect import bisect_right as br
from bisect import bisect
mod = pow(10, 9) + 7

def inp():
	return sys.stdin.readline().strip()

def out(var):
	sys.stdout.write(str(var))

def lis():
	return list(map(int, inp().split()))

def stringlis():
	return list(map(str, inp().split()))

def sep():
	return map(int, inp().split())

def strsep():
	return map(str, inp().split())

def graph(vertex):
	return [[] for i in range(0, vertex + 1)]

def zerolist(n):
	return [0] * n

def nextline():
	out('\n')

def testcase(t):
	for p in range(t):
		solve()

def printlist(a):
	for p in range(0, len(a)):
		out(str(a[p]) + ' ')

def lcm(a, b):
	return a * b // gcd(a, b)

def solve():
	a = inp()
	h1 = int(a[:2])
	m1 = int(a[3:])
	a = inp()
	h2 = int(a[:2])
	m2 = int(a[3:])
	if m2 > m1:
		time = (h2 - h1) * 60 + (m2 - m1)
		time = time // 2
	elif h2 - h1 > 1:
		time = (h2 - 1 - h1) * 60 + (60 - m1 + m2)
		time = time // 2
	else:
		time = 60 - m1 + m2
		time = time // 2
	l = time // 60
	rem = time % 60
	h = h1 + l
	m = m1 + rem
	h += m // 60
	m = m % 60
	ans = ''
	if h < 10:
		ans += '0' + str(h)
	else:
		ans += str(h)
	ans += ':'
	if m < 10:
		ans += '0' + str(m)
	else:
		ans += str(m)
	print(ans)
testcase(1)


in_time_a = list(map(int, input().split(':')))
in_time_b = list(map(int, input().split(':')))
abs_a = in_time_a[0] * 60 + in_time_a[1]
abs_b = in_time_b[0] * 60 + in_time_b[1]
result = (abs_a + abs_b) // 2
hour = str(result // 60)
if result // 60 < 10:
	hour = '0' + str(result // 60)
minute = str(result % 60)
if result % 60 < 10:
	minute = '0' + str(result % 60)
print('%s:%s' % (hour, minute))


start = input().split(':')
end = input().split(':')
h1 = int(start[0])
m1 = int(start[1])
h2 = int(end[0])
m2 = int(end[1])
duration_in_minute = (h2 - h1) * 60 + (m2 - m1)
middle_time = duration_in_minute // 2
middle_h = middle_time // 60
middle_m = middle_time % 60
if middle_m + m1 >= 60:
	middle_h = middle_h + 1 + h1
	middle_m = middle_m + m1 - 60
else:
	middle_h = middle_h + h1
	middle_m = middle_m + m1
if middle_h < 10:
	middle_hour_str = str(0) + str(middle_h)
else:
	middle_hour_str = str(middle_h)
if middle_m < 10:
	middle_minute_str = str(0) + str(middle_m)
else:
	middle_minute_str = str(middle_m)
print(middle_hour_str + ':' + middle_minute_str)


start = [int(i) for i in input().split(':')]
end = [int(i) for i in input().split(':')]
res = [(start[0] + end[0]) // 2, (start[0] + end[0]) % 2 * 30 + (start[1] + end[1]) // 2]
res[0] += res[1] // 60
res[1] %= 60
res = [str(i) for i in res]
res = [i if len(i) == 2 else '0' + i for i in res]
print('{}:{}'.format(*res))


s1 = input()
s2 = input()
k1 = int(s1[0:2]) * 60 + int(s1[3:])
k2 = int(s2[0:2]) * 60 + int(s2[3:])
k3 = (k1 + k2) // 2
h = k3 // 60
m = k3 % 60
print(h // 10, h % 10, ':', m // 10, m % 10, sep='')


from datetime import timedelta, datetime
(h1, m1) = input().split(':')
(h2, m2) = input().split(':')
start_time = str(h1) + ':' + str(m1)
end_time = str(h2) + ':' + str(m2)
time_format = '%H:%M'
start = datetime.strptime(start_time, time_format)
end = datetime.strptime(end_time, time_format)
half_seconds = (end - start).total_seconds() / 2
half = start + timedelta(seconds=half_seconds)
print(half.strftime(time_format))


(h1, m1) = map(int, input().split(':'))
(h2, m2) = map(int, input().split(':'))
print(*map(lambda x: '%02d' % x, divmod((h1 + h2) * 60 + m1 + m2 >> 1, 60)), sep=':')


(n1, n2) = input().split(':')
(n3, n4) = input().split(':')
ini = int(n1) * 60 + int(n2)
final = int(n3) * 60 + int(n4)
result = final - ini
result = result // 2
a = result // 60
b = result % 60
n1 = int(int(n1) + a)
n2 = int(int(n2) + b)
if n2 >= 60:
	n2 = n2 - 60
	n1 += 1
if n1 < 10:
	n1 = '0' + str(n1)
if n2 < 10:
	n2 = '0' + str(n2)
print(n1, ':', n2, sep='')