Harryxun/stf_run huggingface dataset:
N = int(input())
t0 = 0
x0 = 0
y0 = 0
ans = True

for i in range(N):
    x,y,z = map(input().split())
    #t = int(next[0])
    #x = int(next[1])
    #y = int(next[2])
    time = t - t0
    range = abs(x - x0) + abs(y - y0)

    if time < range:
        ans = False
        break

    if time % 2 == 0:
       if range % 2 != 0:
          ans = False
          break
    else:
       if range % 2 == 0 or range == 0:
          ans = False
          break

    t0 = t
    y0 = y
    x0 = x



if ans == True:
    print('Yes')
else:
    print('No')


### FIXED CODE ###

_ = int(input())
bef_time = 0
bef_x = 0
bef_y = 0
ans = True

for i in range(_):
    next = input().split()
    next_time = int(next[0])
    next_x = int(next[1])
    next_y = int(next[2])
    time = next_time - bef_time
    range = abs(next_x - bef_x) + abs(next_y - bef_y)

    if (next_time - bef_time) < range:
        ans = False
        break

    if time % 2 == 0:
       if range % 2 != 0:
          ans = False
          break
    else:
       if range % 2 == 0 or range == 0:
          ans = False
          break

    bef_time = next_time
    bef_y = next_y
    bef_x = next_x



if ans == True:
    print('Yes')
else:
    print('No')
a,b = map(int,input())
if a*b%2 = 0:
    print(Even)

else:
    print(Odd)

### FIXED CODE ###

a,b = map(int,input().split())
if (a*b)%2 == 0:
    print("Even")

else:
    print("Odd")
def c(s, cnt):
    tmp = s.count("ABC")
    if tmp == 0:
        print(cnt)
    else:
        cnt += tmp
        s = s.replace("ABC", "BCA")
        c(s, cnt)
s = input()
ans = 0
c(s, ans)

### FIXED CODE ###

s = input().replace("BC", "D")
ans = 0
a = 0
for i in range(len(s)):
    if s[i] == "A":
        a += 1
    elif s[i] == "D":
        ans += a
    else:
        a = 0
print(ans)
def prime_list_eratosthenes(n):
    if not isinstance(n, int):
        raise TypeError('n is int type.')
    if n < 2:
        raise ValueError('n is more than 2')
    prime = [2]
    limit = int(n**0.5)
    data = [i + 1 for i in range(2, n, 2)]
    while True:
        p = data[0]
        if limit <= p:
            return prime + data
        prime.append(p)
        data = [e for e in data if e % p != 0]
def prime_list_eratosthenes_from(n_from, n_to):
    from bisect import bisect_left
    data = prime_list_eratosthenes(n_to)
    i = bisect_left(data, n_from)
    return data[i:]
x = int(input())
d = prime_list_eratosthenes_from(x, 100000)
print(d[0])

### FIXED CODE ###


def prime_list_eratosthenes(n):
    if not isinstance(n, int):
        raise TypeError('n is int type.')
    if n < 2:
        raise ValueError('n is more than 2')
    prime = [2]
    limit = int(n**0.5)
    data = [i + 1 for i in range(2, n, 2)]
    while True:
        p = data[0]
        if limit <= p:
            return prime + data
        prime.append(p)
        data = [e for e in data if e % p != 0]
def prime_list_eratosthenes_from(n_from, n_to):
    from bisect import bisect_left
    data = prime_list_eratosthenes(n_to)
    i = bisect_left(data, n_from)
    return data[i:]
x = int(input())
d = prime_list_eratosthenes_from(x, 1000000)
print(d[0])
from sys import stdin
S = (stdin.readline().rstrip())
if S{0} == "S":
    print("Cloudy")
elif S[0] == "C":
    print("Rainy")
else:
    print("Sunny")

### FIXED CODE ###

from sys import stdin
S = (stdin.readline().rstrip())
if S[0] == "S":
    print("Cloudy")
elif S[0] == "C":
    print("Rainy")
else:
    print("Sunny")
n, k = map(int, input().split())
h = []
for i in range(n):
    h.append(int(input()))
h.sort()
a = []
for i in range(n-2):
    a.append(h[i+k-1] - h[i])
print(min(a))

### FIXED CODE ###

n, k = map(int, input().split())
h = []
for i in range(n):
    h.append(int(input()))
h.sort()
a = []
for i in range(n-k+1):
    a.append(h[i+k-1] - h[i])
print(min(a))
import math

def main():
  N = int(input())
  
  if N==2:
    print(2)
  else:
    print(search(N))

# xは奇数を前提
def search(x):
  
  # 2は確認不要
  ints = list(range(3,x))
  
  # 順に確認する
  for i in ints:
    
    
    if x%i==0:
      seartch(x+2)
  	elif x < i**2:
      break
    
  return x
    

### FIXED CODE ###

def main():
  N = int(input())
  
  print(search(N))
 
def search(x):
  
  ints = list(range(2,x))
  
  # 順に確認する
  for i in ints:
    if x%i==0:
      return search(x+1)
    elif x < i**2:
      break
    
  return x

main()
def main(N, K):
    if N - 1 >= K:
        return 'YES'
    else:
        return 'NO'


if __name__ == '__main__':
    N, K = map(int, input().split(' '))
    print(main())


### FIXED CODE ###

def main(N, K):
    if K * 2 - 1 <= N:
        return 'YES'
    else:
        return 'NO'


if __name__ == '__main__':
    N, K = map(int, input().split(' '))
    print(main(N, K))
a,b,c,d = map(lambda x: int(x), list(input()))

cnt = 0
def get_str(a):
    if a >= 0:
        s = "+{}".format(a)
    else:
        s = "{}".format(a)
    return s

for i in range(1 << 4 - 1):
    if (i >> 3) % 2 == 0:
        a = -a
    if (i >> 2) % 2 == 0:
        b = -b
    if (i >> 1) % 2 == 0:
        c = -c
    if (i >> 0) % 2 == 0:
        d = -d

    if a + b + c + d  == 7:
        s = ""
        s += get_str(a)
        s += get_str(b)
        s += get_str(c)
        s += get_str(d)
        s += "=7"
        if a >= 0:
            print(s[1::])
        else:


### FIXED CODE ###

a,b,c,d = map(lambda x: int(x), list(input()))

def get_str(i):
    if i >= 0:
        s = "+{}".format(i)
    else:
        s = "{}".format(i)
    return s

for i in range(1 << 3):
    ai, bi, ci, di = a, b, c, d
    if (i >> 2) % 2:
        bi = -b
    if (i >> 1) % 2:
        ci = -c
    if (i >> 0) % 2:
        di = -d

    if ai+bi+ci+di == 7:
        s = ""
        s += get_str(ai)
        s += get_str(bi)
        s += get_str(ci)
        s += get_str(di)
        s += "=7"
        print(s[1::])
        break
n = input().split()

n = [int(n[0]), int(n[1])]
H = n[0]
W=n[1]

s = [list(map(str, input().split())) for i in range(H)]

c = True
for i in range(H):
    for j in range(W):
        if(s[i][0][j] == '#'):
            if(i == 0):
                if(j == 0):
                    if(s[i + 1][0][j] == '.' and s[i][0][j + 1] == '.'):
                        c = False
                        break
                elif(j == W - 1):
                    if(s[i+1][0][j ] == '.' and s[i][0][j-1] == '.'):
                        c = False
                        break
                else:
                     if(s[i + 1][0][j] == '.' and s[i][0][j + 1] == '.' and s[i][0][j-1] == '.'):
                        c = False
                        break
            elif(i == H - 1):
                if(j == 0):
                    if(s[i - 1][0][j] == '.' and s[i][0][j +1] == '.'):
                        c = False
                        break
                elif(j == W - 1):
                    if(s[i-1][0][j] == '.' and s[i][0][j-1] == '.'):
                        c = False
                        break
                else:
                     if(s[i - 1][0][j] == '.' and s[i][0][j + 1] == '.' and s[i][0][j-1] == '.'):
                        c = False
                        break
            else:
                if(j == 0):
                    if(s[i - 1][0][j] == '.' and s[i][0][j +1] == '.' and s[i + 1][0][j] == '.'):
                        c = False
                        break
                elif(j == W - 1):
                    if(s[i-1][0][j] == '.' and s[i][0][j-1] == '.' and s[i + 1][0][j] == '.'):
                        c = False
                        break
                else:
                     if(s[i - 1][0][j] == '.' and s[i][0][j + 1] == '.' and s[i][0][j-1] == '.' and s[i + 1][0][j] == '.'):
                        c = False
                        break
                
    
if(c):
    print("Yes")
else:
    print("No")

### FIXED CODE ###

n = [list(map(int, input().split())) for i in range(1)]
a = n[0][0]
b = n[0][1]

c = 0
if(a > b):
    c = a - 1
else:
    c = a
    
print(c)
import sys

n,m=map(int,input().split())

g=[-1]*n

for i in range(m):

  s,c=map(int,input().split())

  if g[s-1]!=-1 and g[s-1]!=c:
    print("-1")
    sys.exit()

  elif n>=2 and s==1 and c==0:
    print("-1")
    sys.exit()

  else:
    g[s-1]=c

ans=0
h=1

for i in range(m-1,-1,-1):

  if g[i]==-1:

    if n>=2 and i==0:
      g[i]=1
    else:
      g[i]=0


  ans+=int(g[i])*h
  h=h*10


print(ans)

### FIXED CODE ###

import sys

n,m=map(int,input().split())

g=[-1]*n

for i in range(m):

  s,c=map(int,input().split())

  if g[s-1]!=-1 and g[s-1]!=c:
    print("-1")
    sys.exit()

  elif n>=2 and s==1 and c==0:
    print("-1")
    sys.exit()

  else:
    g[s-1]=c

ans=0
h=1

for i in range(n-1,-1,-1):

  if g[i]==-1:

    if n>=2 and i==0:
      g[i]=1

    else:
      g[i]=0


  ans+=int(g[i])*h
  h=h*10

#print(g)

print(ans)
S = str(input())
k = int(input())
if len(S) == 1:
    print(S)
    exit()
for i in range(10):
    if S[i] == "1" and int(S[i]) == k:
        print("1")
        break
    elif S[i] != "1":
        print(S[i])
        break


### FIXED CODE ###

S = str(input())
k = int(input())
for i in range(k):
    if S[i] != "1":
        print(S[i])
        exit()
print("1")
while 1:
	stack = []
	
	try:
		for s in raw_input().split():
			if s == "-":
				stack.append(stack.pop(-2) - stack.pop())
			elif s == "+":
				stack.append(stack.pop(-2) + stack.pop())
			elif s == "/":
				stack.append(stack.pop(-2) / stack.pop())
			elif s == "*":
				stack.append(stack.pop(-2) * stack.pop())
			elif s == "%":
				stack.append(stack.pop(-2) % stack.pop())
			else:
				stack.append(int(s))
	
		print "%.6f" % (stack[0])

### FIXED CODE ###

while 1:
	try:
		stack = []
		for s in raw_input().split():
			if s == "-":
				stack.append(stack.pop(-2) - stack.pop())
			elif s == "+":
				stack.append(stack.pop(-2) + stack.pop())
			elif s == "/":
				stack.append(stack.pop(-2) / stack.pop())
			elif s == "*":
				stack.append(stack.pop(-2) * stack.pop())
			else:
				stack.append(float(s))
	
		print "%.6f" % (stack[0])
	except:
		break
n,k,q=map(int,input().split())
m=[0]*n
ans=0
for i in range(q):
    answer=int(input())
    m[answer-1]+=1
for _ in range(q):
    if k-q+m[_]>0:
        print("Yes")
    else:
        print("No")


### FIXED CODE ###

n,k,q=map(int,input().split())
m=[0]*n
ans=0
for i in range(q):
    answer=int(input())
    m[answer-1]+=1
for _ in range(n):
    if k-q+m[_]>0:
        print("Yes")
    else:
        print("No")
n,k,q=map(int,input().split())
l=[int(input()) for i in range(q)]
p=[0]*
for ll in l:
  p[ll-1]

### FIXED CODE ###

n,k,q=map(int,input().split())
l=[int(input()) for i in range(q)]
p=[k]*n
for ll in l:
  p[ll-1]+=1
for pp in p:
  pp-=q
  if pp>0:
    print('Yes')
  else:
    print('No')
N = int(input())
A_list = list(map(int,input().split()))
A_list.sort(reverse = True)
indx_list = []
for i in range(1,100000,2):
    indx_list.append(i)
insx_list = []
for j in range(0,18):
    insx_list.extend(indx_list[:2 ** j])
mx_cmfrt = 0
reached_list = [A_list[0],A_list[0]]
for j in range(1, len(A_list)):
    cmfrt = min(reached_list[j-1],reached_list[j])
    reached_list.insert(insx_list[j], A_list[j])
    mx_cmfrt += cmfrt
    cmfrt = 0
print(mx_cmfrt)

### FIXED CODE ###

import math
N = int(input())
A = list(map(int,input().split()))
A.sort(reverse = True)
score = A[0]
for i in range(1, math.ceil(N*0.5)):
    if N - i * 2 != 1:
        score += 2 * A[i]
    else:
        score += A[i]
print(score)
import math

ans = 0
N,K = input().split()
for i in range(N):
	ans += Fraction(1,N)*Fraction(1,math.ceil(math.log2(K/(i+1))))
print(float(ans))


### FIXED CODE ###

import math
from fractions import Fraction

ans = 0
N, K = map(int, input().split())
for i in range(1,N+1):
	ans += Fraction(1,2**(math.ceil(math.log2(max(1,K/i)))))
ans = float(ans/N)
print('{:.10f}'.format(ans))
while(1):
  table = {}
  output = ''
  table_number = input()
  if table_number == 0:
    break
  for i in range(table_number):
    a, b = raw_input().split()
    table[a] = b
  string_number = input()
  for i in (string_number):
    string = input()
    for table_element in table:
      if tabole_element[0] == string:
        string =table_element[1]
    output += string
  print output

### FIXED CODE ###

while(1):
  table = {}
  output = ''
  table_number = int(input())
  if table_number == 0:
    break
  for i in xrange(table_number):
    a, b = raw_input().split()
    table[a] = b
  string_number = int(input())
  for i in xrange(string_number):
    string = raw_input()[0]
    if string in table:
      output += table[string]
    else:
      output += string
  print output
l = [input() for i in range(6)]
if l[4] - l[0] < l[5]:
    print("Yay!")
else:
    print(":(")

### FIXED CODE ###

l = [int(input()) for i in range(6)]
if l[4] - l[0] <= l[5]:
    print("Yay!")
else:
    print(":(")
R, G, B, N = map(int, input().split())
R, G, B = sorted([R, G, B])

i = 0
for r in range(N // R + 1):
    for g in range((N - r) // G + 1):
        bb = (N - r*R - g*G)
        if bb >= 0 and bb % B == 0:
            i += 1

print(i)

### FIXED CODE ###

N, M = map(int, input().split())
print(N-M+1)
a=int(input().split())
print((a[0]-1)*(a[1]-1))

### FIXED CODE ###

a = [int(x) for x in input().split()]
print((a[0]-1)*(a[1]-1))
A, B, C, D = map(int, input())
print("Right" if (A+B) < (C+D) else "Balanced" if (A+B) == (C+D) else "Left")

### FIXED CODE ###

A, B, C, D = map(int, input().split())
print("Right" if (A+B) < (C+D) else "Balanced" if (A+B) == (C+D) else "Left")
x = int(''.join(input().split()))
for i in range(int(x/2) + 1):
    if x == i * i:
        return print('Yes')
print('No')

### FIXED CODE ###

x = int(''.join(input().split()))
for i in range(int(x/2) + 1):
    if x == i * i:
        break
print('Yes' if  x == i * i else 'No')
a,b,c=input()
if a == c: print('Yes') else: print('No')

### FIXED CODE ###

a,b,c=input()
if a == c:
  print('Yes')
else:
  print('No')
N=int(input())
a=list(map(int,input().split()))
for i in range(0,N):
	a.sort()
	x,y=map(int,a.pop())
	a.append((x+y)/2)

### FIXED CODE ###

N=int(input())
a=list(map(int,input().split()))
while len(a)>1:
	a.sort()
	x=a.pop(0)
	y=a.pop(0)
	a.append((x+y)/2)
print(a[0])
n,m,p = map(int,input().split())
E1 = [[] for i in range(n)]
E2 = [[] for i in range(n)]
edge = []
for i in range(m):
    a,b,c = map(int,input().split())
    c = p-c
    a -= 1
    b -= 1
    E1[a].append(b)
    E2[b].append(a)
    edge.append((a,b,c))

dis1 = [False]*n
def dfs1(x):
    if dis1[x] == False:
        dis1[x] = True
        for nex in E1[x]:
            dfs1(nex)

dis2 = [False]*n
def dfs2(x):
    if dis2[x] == False:
        dis2[x] = True
        for nex in E2[x]:
            dfs2(nex)

dfs1(0)
dfs2(n-1)

ok = []
for i in  range(n):
    if dis1[i] == True and dis2[i] == True:
        ok.append(True)
    else:
        ok.append(False)
nedge = []
for a,b,c in edge:
    if ok[a] and ok[b]:
        nedge.append((a,b,c))

def belw():
    dis = [float("INF")]*n
    dis[0] = 0
    count = 0
    check = True

    while check:
        check = False
        for a,b,c in nedge:
            
            if dis[a] != float("INF") and dis[b] > dis[a]+c:
                check = True
                dis[b] = dis[a]+c
        count += 1

        if count > n+1 and check:
            return float("INF")
    
    return -dis[-1]

ans = belw()
if ans == float("INF"):
    print(-1)
else:
    print(max(ans,0))











### FIXED CODE ###

import sys
sys.setrecursionlimit(10**7)
n,m,p = map(int,input().split())
E1 = [[] for i in range(n)]
E2 = [[] for i in range(n)]
edge = []
for i in range(m):
    a,b,c = map(int,input().split())
    c = p-c
    a -= 1
    b -= 1
    E1[a].append(b)
    E2[b].append(a)
    edge.append((a,b,c))

dis1 = [False]*n
def dfs1(x):
    if dis1[x] == False:
        dis1[x] = True
        for nex in E1[x]:
            dfs1(nex)

dis2 = [False]*n
def dfs2(x):
    if dis2[x] == False:
        dis2[x] = True
        for nex in E2[x]:
            dfs2(nex)

dfs1(0)
dfs2(n-1)

ok = []
for i in  range(n):
    if dis1[i] and dis2[i]:
        ok.append(True)
    else:
        ok.append(False)
nedge = []
for a,b,c in edge:
    if ok[a] and ok[b]:
        nedge.append((a,b,c))

def belw():
    dis = [float("INF")]*n
    dis[0] = 0
    count = 0
    check = True

    while check:
        check = False
        for a,b,c in nedge:
            
            if dis[a] != float("INF") and dis[b] > dis[a]+c:
                check = True
                dis[b] = dis[a]+c
        count += 1

        if count > n+1 and check:
            return float("INF")
    
    return -dis[-1]

ans = belw()
if ans == float("INF"):
    print(-1)
else:
    print(max(ans,0))
n = int(input())
s = list(map(str, input().split(' ')))
#print(s)

si = [print('Four')if 'Y' in s else print('Three') ]


### FIXED CODE ###

n = int(input())
print(int(n/3))
a,b=input().split()

if a%2==0:
  print("Even")
elif b%2==0:
  print("Even")
else:
  print("Odd")


### FIXED CODE ###

a_, b_ = input().split()
a = (int)(a_)
b = (int)(b_)

if a%2==0:
    print("Even")
elif b%2==0:
    print("Even")
else:
    print("Odd")
import sys
import math
from collections import defaultdict
from bisect import bisect_left, bisect_right

sys.setrecursionlimit(10**7)
def input():
    return sys.stdin.readline()[:-1]

mod = 10**9 + 7

def I(): return int(input())
def LI(): return list(map(int, input().split()))
def LIR(row,col):
    if row <= 0:
        return [[] for _ in range(col)]
    elif col == 1:
        return [I() for _ in range(row)]
    else:
        read_all = [LI() for _ in range(row)]
        return map(list, zip(*read_all))

#################

N,K,C = LI()
S = str(input())

dp = [0]*N
for i in range(N)[::-1]:
    if S[i]=='o':
        if i+C+1 >= N:
            dp[i] = 1
        else:
            dp[i] = max(dp[i+C+1]+1,dp[i+1])
    else:
        dp[i] = dp[i+1]

dpz = [0]*N
for i in range(N):
    if S[i]=='o':
        if i-C-1 < 0:
            dpz[i] = 1
        else:
            dpz[i] = max(dpz[i-C-1]+1,dpz[i-1])
    else:
        dpz[i] = dpz[i-1]

ans = []
if dp[1] < K:
    ans.append(1)

for i in range(1,N-1):
    if dp[i]+dpz[i]-1 >= K and dp[i+1]+dpz[i+1]-1 < K and dp[i-1]+dpz[i-1]-1 < K:
        ans.append(i+1)
if N >= 2:
    if dpz[N-2] < K:
        ans.append(N)

for a in ans:
    print(a)

### FIXED CODE ###

import sys
import math
from collections import defaultdict
from bisect import bisect_left, bisect_right

sys.setrecursionlimit(10**7)
def input():
    return sys.stdin.readline()[:-1]

mod = 10**9 + 7

def I(): return int(input())
def LI(): return list(map(int, input().split()))
def LIR(row,col):
    if row <= 0:
        return [[] for _ in range(col)]
    elif col == 1:
        return [I() for _ in range(row)]
    else:
        read_all = [LI() for _ in range(row)]
        return map(list, zip(*read_all))

#################

N,K,C = LI()
S = str(input())

L = []
R = []

for i in range(N):
    if S[i] == 'o':
        if len(L) == 0:
            L.append(i)
        else:
            if L[-1]+C+1 <= i:
                L.append(i)
    if len(L) == K:
        break

for i in range(N)[::-1]:
    if S[i] == 'o':
        if len(R) == 0:
            R.append(i)
        else:
            if R[-1]-C-1 >= i:
                R.append(i)
    if len(R) == K:
        break

R = list(reversed(R))

for i in range(len(L)):
    if L[i] == R[i]:
        print(L[i]+1)
N, K = map(int, input().split())
A = list(map(int, input().split()))
ans = 0
 
assert K > 10
 
print(114514)

### FIXED CODE ###

input_line = input().split()

num_array = int(input_line[0])
num_equal = int(input_line[1])

input_line = input() # 無視

equalized = 1
i = 0
while equalized < num_array:
    equalized += (num_equal - 1)
    # print(i, equalized)
    i += 1

print(str(i))
N = int(input())
MOD = 1000000000 + 7
def power_func(a,n,p):
    bi = str(format(n,"b"))#2進表現に
    res = 1
    for i in range(len(bi)):
        res = (res*res) %p
        if bi[i] == "1":
            res = (res*a) %p
    return res
print(str((power_func(10, N, MOD) - 2 * power_func(9, N, MOD) + power_func(8, N, MOD) % MOD))


### FIXED CODE ###

N = int(input())
MOD = 1000000000 + 7
def power_func(a, n, p):
    bi = str(format(n,"b"))#2進表現に
    res = 1
    for i in range(len(bi)):
        res = (res*res) % p
        if bi[i] == "1":
            res = (res*a) % p
    return res
print(str((power_func(10, N, MOD) - 2 * power_func(9, N, MOD) + power_func(8, N, MOD)) % MOD))
import statistics
import sys
import math
INPUT = sys.stdin.readline
#入力関数
def SORO_INT(): return int(INPUT())
def MULT_INT_LIST(): return list(map(int, INPUT().split()))
def MULT_INT_MAP(): return map(int, INPUT().split())
def SORO_STRING(): return INPUT()
def MULT_STRING(): return INPUT().split()
 
def is_integer_num(n):
    if isinstance(n, int):
        return True
    if isinstance(n, float):
        return n.is_integer()
    return False
    
A = MULT_INT_LIST()
mean = statistics.mean(A)
 
if is_integer_num(mean):
  print(int(mean))
else:
  print('IMPOSSIBLE')
 
 
import statistics
import sys
import math
INPUT = sys.stdin.readline
#入力関数
def SORO_INT(): return int(INPUT())
def MULT_INT_LIST(): return list(map(int, INPUT().split()))
def MULT_INT_MAP(): return map(int, INPUT().split())
def SORO_STRING(): return INPUT()
def MULT_STRING(): return INPUT().split()

def is_integer_num(n):
    if isinstance(n, int):
        return True
    if isinstance(n, float):
        return n.is_integer()
    return False
    
A = MULT_INT_LIST()
mean = statistics.mean(A)

if is_integer_num(mean):
  print(int(mean))
else:
  print('IMPOSSIBLE')

### FIXED CODE ###

import statistics
import sys
import math
INPUT = sys.stdin.readline
#入力関数
def SORO_INT(): return int(INPUT())
def MULT_INT_LIST(): return list(map(int, INPUT().split()))
def MULT_INT_MAP(): return map(int, INPUT().split())
def SORO_STRING(): return INPUT()
def MULT_STRING(): return INPUT().split()
 
def is_integer_num(n):
    if isinstance(n, int):
        return True
    if isinstance(n, float):
        return n.is_integer()
    return False
    
A = MULT_INT_LIST()
mean = statistics.mean(A)
 
if is_integer_num(mean):
  print(int(mean))
else:
  print('IMPOSSIBLE')
n = int(input())
a=[]
for i in range(n):
  a.append(int(input()))
count = 0
success = True
while True:
  for i, ele in enumerate(a):
    if ele % 2 == 0:
      a[i] = ele / 2
    else:
      success = False
  if not success:
    break
  count += 1
print(count)

### FIXED CODE ###

n = int(input())
a=list(map(int, input().split()))
count = 0
success = True
while True:
    for i, ele in enumerate(a):
        if ele % 2 == 0:
            a[i] = ele / 2
        else:
            success = False
    if not success:
        break
    count += 1
print(count)
a, b = map(int(), input().split())
if ((a*b)%2) == 0:
  print('Even')
elif:
  print('Odd')

### FIXED CODE ###

a, b = map(int, input().split())
if ((a*b)%2) == 0:
  print('Even')
else:
  print('Odd')
a,b=map(int,input().split())
import math
def lcm(x, y):
    return (x * y) // math.gcd(x, y)

print(lcm(a, b))

### FIXED CODE ###

a,b=map(int,input().split())
def gcd(a,b):
    while b!=0:
        a,b=b,a%b
    return a

def lcm(x, y):
    return (x * y) // gcd(x, y)

print(lcm(a, b))