# Задача 1
s1 = set(input().split())
s2 = set(input().split())
print("Пересечение:", *sorted(s1 & s2))
print("Только в первом:", *sorted(s1 - s2))
# Задача 2
text = input()
counts = {}
for char in text:
counts[char] = counts.get(char, 0) + 1
for char, count in sorted(counts.items(), key=lambda x: x[1], reverse=True):
print(f"{char}: {count}")
# Задача 3
n, m = map(int, input().split())
res = {}
for i in range(n):
row = list(map(int, input().split()))
for j in range(m):
if row[j] % 2 != 0:
res[(i, j)] = row[j]
print(res)
# Задача 4
s = input()
print(len(s) == len(set(s)))
# Задача 5
d1 = {'яблоки': 100, 'бананы': 50}
d2 = {'бананы': 30, 'груши': 20}
merged = {k: d1.get(k, 0) + d2.get(k, 0) for k in set(d1) | set(d2)}
print(dict(sorted(merged.items())))
# Задача 6
words = input().split()
groups = {}
for word in words:
key = tuple(sorted(word))
groups.setdefault(key, []).append(word)
print(list(groups.values()))
# Задача 7
events = [('u1', 100, 'online'), ('u2', 120, 'offline'), ('u1', 200, 'offline')]
latest = {}
for user_id, ts, status in events:
if user_id not in latest or ts > latest[user_id][0]:
latest[user_id] = (ts, status)
print(sorted([(u, ts, st) for u, (ts, st) in latest.items()]))