Harryxun/stf_run huggingface dataset:
#!/user/bin/env 

n = int(input())
t = [-1 for _ in
x = [-1 for _ in
y = [-1 for _ in
for i in range(n
    t[i], x[i], 

dt = [-1 for _ i
dx = [-1 for _ i
dy = [-1 for _ i
for i in range(n
    if i == 0:
        dt[0] = 
        dx[0] = 
        dy[0] = 
    else:
        dt[i] = 
        dx[i] = 
        dy[i] = 

ok = True
for i in range(n
    tr = dt[i]%2
    pr = (dx[i]+
    if (tr == pr
        pass
    else:
        ok = Fal
#        import 
        break

if ok:
    print('Yes')
else:
    print('No')


### FIXED CODE ###

#!/user/bin/env python3

n = int(input())
t = [-1 for _ in range(n)]
x = [-1 for _ in range(n)]
y = [-1 for _ in range(n)]
for i in range(n):
    t[i], x[i], y[i] = map(int, input().split())

dt = [-1 for _ in range(n)]
dx = [-1 for _ in range(n)]
dy = [-1 for _ in range(n)]
for i in range(n):
    if i == 0:
        dt[0] = t[0]
        dx[0] = x[0]
        dy[0] = y[0]
    else:
        dt[i] = t[i] - t[i-1]
        dx[i] = x[i] - x[i-1]
        dy[i] = y[i] - y[i-1]

ok = True
for i in range(n):
    tr = dt[i]%2
    pr = (dx[i]+dy[i])%2
    if (tr == pr) and (dt[i] >= abs(dx[i])+abs(dy[i])):
        pass
    else:
        ok = False
#        import pdb; pdb.set_trace()
        break

if ok:
    print('Yes')
else:
    print('No')
a, b = input().split()
print(int(A) * int(float(B)*1000//1000))

### FIXED CODE ###

a,b=map(int,input().replace('.', '').split())
print(a*b//100)
n = input()
mochi = [input() for i in range(int(n))]
print(len(set(mochi))

### FIXED CODE ###

n = input()
mochi = [input() for i in range(int(n))]
print(len(set(mochi)))
n, m = [0] * 2

def format_input(filename = None):
	global n, m
	if filename == None:
		n, m = list(map(int, input().split()))

	elif filename == '__random__':
		from random import randint as rng
		n = rng(3, 10**5)
		m = rng(1, (n-1) // 2)
		print(n, m)

def get_answer():
	median = n // 2

	for i in range(m):
		if n % 2 == 0 and i => n // 4:
			print(median-i, median+i+2)
		else:
			print(median-i, median+i+1)


if __name__ == '__main__':
	format_input()

	get_answer()


### FIXED CODE ###



n, m = [0] * 2

def format_input(filename = None):
	global n, m
	if filename == None:
		n, m = list(map(int, input().split()))

	elif filename == '__random__':
		from random import randint as rng
		n = rng(3, 10**5)
		m = rng(1, (n-1) // 2)
		print(n, m)

def get_answer():
	median = n // 2

	for i in range(m):
		if n % 2 == 0 and i >= n // 4:
			print(median-i, median+i+2)
		else:
			print(median-i, median+i+1)


if __name__ == '__main__':
	format_input()

	get_answer()
import numpy as np

temp=list(map(int, input().split()))
N=temp[0]
Q=temp[1]

matrix=np.zeros((N, N))
for i in range(N):
  matrix[i, i]=1
  
for i in range(N-1):
  temp=list(map(int, input().split()))
  matrix[temp[0]-1, temp[1]-1]=1
  
counter=np.zeros(N)
for i in range(Q):
  temp=list(map(int, input().split()))
  counter[temp[0]-1]+=temp[1]
  
for i in range(N):
  counter[i]=np.dot(counter, matrix[:, i])
  
print(' '.join(map(str, map(int, counter.tolist()))))

### FIXED CODE ###

import sys
sys.setrecursionlimit(10**6)

def input():
  return sys.stdin.readline()[:-1]

N, Q=map(int, input().split())

link=[[] for i in range(N+1)]
for i in range(N-1):
  a, b=map(int, input().split())
  link[a].append(b)
  link[b].append(a)

px=[list(map(int, input().split())) for i in range(Q)]

counter=[0]*(N+1)
for i in range(Q):
  counter[px[i][0]]+=px[i][1]
  
def f(num, prenum=-1, p=0):
  counter[num]+=p
  for postnum in link[num]:
    if postnum==prenum:
      continue
    f(postnum, num, counter[num])
    
f(1)

print(*counter[1:])
a, b, c, /d = map(input().split())

ab = a - b
bc = b - c
ac = a - c

if ab <= d and bc <= d or ac <= d:
    print("Yes")
else:
    print("No")

### FIXED CODE ###

a, b, c, d = map(int, input().split())

if abs(a-b) <= d and abs(b-c) <= d or abs(a-c) <= d:
    print('Yes')
else:
    print('No')
N,A,B=map(int,input().split())
ball=('b'*A+'a'*B)*10000
print(ball[0:N].count('b'))N,A,B=map(int,input().split())
ball=('b'*A+'a'*B)*N
print(ball[0:N].count('b'))

### FIXED CODE ###

N,A,B=map(int,input().split())
if N == (N//(A+B))*(A+B):
    print(N-(N//(A+B))*(B))
elif (N//(A+B))*(A+B)<N <= (N//(A+B))*(A+B)+A:
    print(N-(N//(A+B))*(B))
else:
    print((N//(A+B)+1)*(A))
N, K = map(int, input().split())

num_exclude = list(map(int, input().split()))

dec_num = [i for i in range(0, 10)]

able_use_num_lis = list(map(str, set(dec_num) - set(num_exclude)))

num_len = len(str(N))

output_list = []

def dfs(cur, num, able_use_num_lis):
    if num != '':
        if int(num) >= N:
            output_list.append(int(num))
    if len(str(N)) == cur:
        return
    
    for add_num in able_use_num_lis:
        ret = dfs(cur + 1, num + add_num, able_use_num_lis)
    return output_list

print(min(dfs(0, '', able_use_num_lis)))

### FIXED CODE ###

N, K = map(int, input().split())

num_exclude = list(map(int, input().split()))

dec_num = [i for i in range(0, 10)]

able_use_num_lis = list(map(str, set(dec_num) - set(num_exclude)))

num_len = len(str(N))

output_list = []

def dfs(cur, num, able_use_num_lis):
    if num != '':
        if int(num) >= N:
            output_list.append(int(num))
    if len(str(N)) + 1 == cur:
        return
    
    for add_num in able_use_num_lis:
        ret = dfs(cur + 1, num + add_num, able_use_num_lis)
    return output_list

print(min(dfs(0, '', able_use_num_lis)))
N = int(input())
A=list(map(int,input().split()))
i=0
j=0
ask=0
while(j<N):
    while(i<N-1):
        x=A[i+1]-A[i]
        if x<-1:
            ask=1
            break
        elif x==-1:
            A[i]=A[i]-1
            break
        i=i+1
    j=j+1
    i=j
if ask==0:
    print('Yes')
else:
    print('No')


### FIXED CODE ###

a, b, c = map(int, input().split())
c=max(c-a+b,0)
print(c)
a,b,c,d,e,f=map(int,input().split())
dp=[-1]*(f+1)
dp[0]=0
for i in range(f+1):
  for j in [a*100,b*100]:
    if dp[i-j]!=-1:
      dp[i]=max(0,dp[i])
  for j in [c,d]:
    if dp[i-j]!=-1 and 100*(dp[i-j]+j)<=e*(i-(dp[i-j]+j)):
      dp[i]=max(dp[i],dp[i-j]+j)
stack=0
index=0
for i in range(f+1):
  if dp[i]!=0:
    if stack<dp[i]*100/(i-dp[i]):
      stack=dp[i]*100/(i-dp[i])
      index=i
print(index,dp[index])

### FIXED CODE ###

a,b,c,d,e,f=map(int,input().split())
dp=[-1]*(f+1)
dp[0]=0
flag=True
for i in range(1,f+1):
  for j in [a*100,b*100]:
    if i-j>=0 and dp[i-j]!=-1:
      dp[i]=max(0,dp[i])
  for j in [c,d]:
    if i-j>=0 and dp[i-j]!=-1:
      if 100*(dp[i-j]+j)<=e*(i-(dp[i-j]+j)):
        dp[i]=max(dp[i],dp[i-j]+j)
      else:
        for k in [a*100,b*100]:
          if i-k-j>=0 and dp[i-k-j]!=-1:
            if 100*(dp[i-k-j]+j)<=e*(i-(dp[i-k-j]+j)):
              dp[i]=max(dp[i],dp[i-k-j]+j)
stack=0
index=min(a*100,b*100)
for i in range(index+1,f+1):
  if dp[i]>0:
    if stack<(dp[i]*100)/i:
      stack=(dp[i]*100)/i
      index=i
print(index,dp[index])
N = int(input())
P = list(map(int,input().split()))

res = [False for x in range(N)]
for i in range(1,N):
  if P[i-1] >= P[i] :
    res[i] = True
  
print(sum(res)+1)

### FIXED CODE ###

a,b = list(map(int,input().split()))

ab = str(a) *b
ba = str(b) *a

print(min([ab,ba]))
a,b,c = input().split()
 
a = int(a)
b = int(b)
c = int(c)
 
import math
 
if (math.sqrt(a/c) + math.sqrt(b/c) < 1:
    print('Yes')
else:
    print('No')

### FIXED CODE ###

a,b,c = map(int, input().split())

if 4 * a * b < (c - a- b)**2 and c - a- b > 0:
    print("Yes")
else:
    print("No")
n = int(input())
count = 0
a = [0]*(10**4)
for i in range(1, 41):
  for j in range(1, 41):
    for k in range(1, 41):
      a[(i+j+k)**2-(i*j+j*k+i*k)] += 1


for i in range(1, n+1):
  print(a[i])

### FIXED CODE ###

n = int(input())
count = 0
a = [0]*(10**5)
for i in range(1, 100):
  for j in range(1, 100):
    for k in range(1, 100):
      a[(i+j+k)**2-(i*j+j*k+i*k)] += 1


for i in range(n):
  print(a[i+1])
number = int(input())
rate = [int(i) for i in input().split()]


# In[7]:

counter = {}
for r in rate:
    if 1 <= r < 400:
        counter["grey"] = counter.get("grey", 0) + 1
    if 400 <= r < 800:
        counter["brown"] = counter.get("brown", 0) + 1
    if 800 <= r < 1200:
        counter["green"] = counter.get("green", 0) + 1
    if 1200 <= r < 1600:
        counter["sky"] = counter.get("sky", 0) + 1
    if 1600 <= r < 2000:
        counter["blue"] = counter.get("blue", 0) + 1
    if 2000 <= r < 2400:
        counter["yellow"] = counter.get("yellow", 0) + 1
    if 2400 <= r < 2800:
        counter["orange"] = counter.get("orange", 0) + 1
    if 2800 <= r < 3200:
        counter["red"] = counter.get("red", 0) + 1
    if 3200 <= r:
        counter["color"] = counter.get("color", 0) + 1

answer = 0
for k, v in counter.items():
    if not v == 0:
        answer += 1
        
if counter.get("color", 0) == 0:
    if answer == 1:
        print("1 " + str(counter["colors"]))
    else:
        print(str(answer) + " " + str(answer))
else:
    print(str(answer-1) + " " + str(answer-1+counter["color"]))


### FIXED CODE ###

number = int(input())
rate = [int(i) for i in input().split()]


# In[7]:

counter = {}
for r in rate:
    if 1 <= r < 400:
        counter["grey"] = counter.get("grey", 0) + 1
    if 400 <= r < 800:
        counter["brown"] = counter.get("brown", 0) + 1
    if 800 <= r < 1200:
        counter["green"] = counter.get("green", 0) + 1
    if 1200 <= r < 1600:
        counter["sky"] = counter.get("sky", 0) + 1
    if 1600 <= r < 2000:
        counter["blue"] = counter.get("blue", 0) + 1
    if 2000 <= r < 2400:
        counter["yellow"] = counter.get("yellow", 0) + 1
    if 2400 <= r < 2800:
        counter["orange"] = counter.get("orange", 0) + 1
    if 2800 <= r < 3200:
        counter["red"] = counter.get("red", 0) + 1
    if 3200 <= r:
        counter["color"] = counter.get("color", 0) + 1

answer = 0
for k, v in counter.items():
    if not v == 0:
        answer += 1
        
if counter.get("color", 0) == 0:
    print(str(answer) + " " + str(answer))
else:
    if answer == 1:
        print("1 " + str(counter["color"]))
    else:
        print(str(answer-1) + " " + str(answer-1+counter["color"]))
a = int( x**(1/5) )
b = int( x**(1/5) )
p = a**5-x
q = b**5-x
while abs(p**(1/5)).is_integer()!=True and abs(q**(1/5)).is_integer()!=True:
        a-=1
        b+=1
else:
    if abs(p**(1/5)).is_integer()==True:
        if p>=0:
            print(a,int(p**(1/5)))
        else:
            print(a,int(abs(p**(1/5)))*(-1))
    else:
        if q>=0:
            print(b,int(q**(1/5)))
        else:
            print(b,int(abs(q**(1/5)))*(-1))

### FIXED CODE ###

x=int(input())
for i in range(10**3):
    for j in range(2*10**3):
        if (i)**5-(j-10**3)**5==x:
            print(i,j-10**3)
            exit()
import sys
reader = (s.rstrip() for s in sys.stdin)
input = reader.__next__

n = int(input())
G = [[] for i in range(n)]
for i in range(n-1):
    a,b = map(int, input().split())
    a,b = a-1,b-1
    G[a].append(b)
    G[b].append(a)

from collections import deque

def calc_dist(G, start):
    que = deque()
    dep = [-1]*n
    que.append((-1,start,0))
    while que:
        p,v,d = que.pop()
        dep[v]=d
        for to in G[v]:
            if to != p:
                que.append((v,to,d+1))
    return dep

dep0 = calc_dist(G,0)
m = max(dep0)
left = dep0.index(m)
dep1 = calc_dist(G,left)
m = max(dep1)
right = dep1.index(m)
dep2 = calc_dist(G, right)

x = sum(i%2==0 for i in dep1)
y = n - x
ok = set()
for i in range(n):
    ma = max(dep1[i], dep2[i])
    if ma < 3:
        if dep1[i]%2 == 0:
            x -= 1
        else:
            y -= 1
        ok.add(i)

one = []
two = []
three = []
for i in range(1, n+1):
    if i%3 == 0:
        three.append(i)
    elif i%3 == 1:
        one.append(i)
    else:
        two.append(i)

ans = [0]*n
if x<y:
    one, two = two, one
for i in range(n):
    if i in ok:
        continue
    if dep1[i]%2 == 0:
        if one:
            ans[i] = one.pop()
        else:
            ans[i] = three.pop()
    else:
        if two:
            ans[i] = two.pop()
        else:
            ans[i] = three.pop()
res = one+two+three
for i in ok:
    ans[i] = res.pop()

print(*ans)


### FIXED CODE ###

import sys
reader = (s.rstrip() for s in sys.stdin)
input = reader.__next__

sys.setrecursionlimit(10**9)


n = int(input())
G = [[] for i in range(n)]
for i in range(n-1):
    a,b = map(int, input().split())
    a,b = a-1,b-1
    G[a].append(b)
    G[b].append(a)

flag = [0]*n
def dfs(cur, par,f):
    flag[cur] = f
    for to in G[cur]:
        if to != par:
            dfs(to, cur, f^1)

dfs(0, -1, 0)

a = sum(flag)
b = n-a

one = []
two = []
three = []
for i in range(1, n+1):
    if i%3 == 0:
        three.append(i)
    elif i%3 == 1:
        one.append(i)
    else:
        two.append(i)
k = n//3
ans = [0]*n
if k<a and k<b:
    for i in range(n):
        if flag[i]:
            if one:
                ans[i] = one.pop()
            else:
                ans[i] = three.pop()
        else:
            if two:
                ans[i] = two.pop()
            else:
                ans[i] = three.pop()
else:
    #1
    if k >= a:
        for i in range(n):
            if flag[i]:
                ans[i] = three.pop()
        res = one + two + three
        for i in range(n):
            if not flag[i]:
                ans[i] = res.pop()
    # 0
    else:
        for i in range(n):
            if not flag[i]:
                ans[i] = three.pop()
        res = one + two + three
        for i in range(n):
            if flag[i]:
                ans[i] = res.pop()
print(*ans)
order = [int(input()) for _ in range(5)]
min_digit = 0
time = 0
for i in range(len(order)):
  if order[i]%10!=0:
    time+=(order[i]//10+1)*10
  else:
    time+=order[i]

order_digit = [i%10 for i in order]
if order_digit == [0,0,0,0,0]:
  print (time-10+min_digit)
else:
  for i in range(len(order)):
    digit = order[i]%10
    if min_digit>=digit and digit!=0:
    min_digit=digit

### FIXED CODE ###

order = [int(input()) for _ in range(5)]
min_digit = 9
time = 0
for i in range(len(order)):
  if order[i]%10!=0:
    time+=(order[i]//10+1)*10
  else:
    time+=order[i]

for i in range(len(order)):
  digit = order[i]%10
  if min_digit>=digit and digit!=0:
    min_digit=digit
    
order_digit = [i%10 for i in order]
if order_digit == [0,0,0,0,0]:
  print (time)
else:
  print (time-10+min_digit)
N=int(input())
cnt=1
H=list(map(int,input().split()))
for i in range(N):
    for j in range(i):
        if j-1 > 0:
            if H[i] >= H[j-1]:
                cnt+=1
print(cnt)
            

### FIXED CODE ###

A,B=map(int,input().split())
s=0
if A > B:
    s=A+(A-1)
elif A < B:
    s=B+(B-1)
else:
    s=A+B
print(s)
from math import sqrt, inf

a = []


def dis(n):
    for i in range(1, int(sqrt(n)) + 1):
        if n % i == 0:
            a.append(int(i))


num = int(input())
dis(num)
ans = inf
for e in a:
    ans = min(ans, e + num / e - 2)
print(int(ans))


### FIXED CODE ###

def solve(n):
    ans = int(1e12)
    for i in range(1, int(n ** 0.5) + 1):
        if n % i == 0 and i + n // i - 2 < ans:
            ans = i + n // i - 2
    return int(ans)


num = int(input())
print(solve(num))
A, B, C, D = map(int, input().split())
if (C//B) < (A//D):
  print("No")
elif (C//B) = (A//D) and A%D = 0:
  print("No")
else:
  print("Yes")

### FIXED CODE ###

A, B, C, D = map(int, input().split())
if ((C+B-1)//B) > ((A+D-1)//D):
  print("No")
else:
  print("Yes")
n=int(input())
x=input()
pc=[0]*(2*10**5+1)
pc[1]=1
for i in range(1,2*10**5+1):
  pc[i]=pc[i>>1]+pc[i&1]
f=[0]*(2*10**5+1)
for i in range(1,2*10**5+1):
  f[i]=f[i%pc[i]]+1
xx=int(x,2)
j=2**(n-1)
cnt=x.count('1')
for i in range(n):
  if x[i]=='1':
    c=cnt-1
    nx=(xx-(j>>i))%c
  else:
    c=cnt+1
    nx=(xx+(j>>i))%c
  print(f[nx]+1)

### FIXED CODE ###

n=int(input())
x=input()
pc=[0]
m=2*10**5
for i in range(1,m+2):
  cnt=0
  j=i
  while i:
    cnt+=i%2
    i//=2
  pc+=[j%cnt]
f=[0]*(m+2)
for i in range(1,m+2):
  if pc[i]==0:f[i]=1
  else:f[i]=f[pc[i]]+1
cnt=x.count('1')
ix=int(x,2)
ixp=ix%(cnt+1)
ixm=ix%(cnt-1) if cnt-1 else 0
d=1<<(n-1)
for i in range(n):
  dp=pow(2,n-i-1,cnt+1)
  if cnt-1:dm=pow(2,n-i-1,cnt-1)
  if x[i]=='0':print(f[(ixp+dp)%(cnt+1)]+1)
  else:
    if cnt-1:print(f[(ixm-dm)%(cnt-1)]+1)
    else:print(0)
N = input()
S = list(input())

ans = 0
for i in range(1, N):
    left = set(S[:i])
    right = set(S[:i])

    both = left & right
    ans = max(len(both), ans)


print(ans)


### FIXED CODE ###

N = int(input())
S = list(input())

ans = 0
for i in range(1, N):
    left = set(S[:i])
    right = set(S[i:])
    both = left & right
    ans = max(len(both), ans)


print(ans)
a, b, c, d = input().split() 
xy1 = a*c
xy2 = a*d
xy3 = b*c
xy4 = b*d
 
print(max([xy1, xy2, xy3, xy4]))

### FIXED CODE ###

a, b, c, d = input().split() 
a = int(a)
b = int(b)
c = int(c)
d = int(d)
xy1 = a*c
xy2 = a*d
xy3 = b*c
xy4 = b*d
 
print(max([xy1, xy2, xy3, xy4]))
count=0
int a,b,c=map(int,input().split())
if a>0:
	count+=1
if b>0:
	count+=1
if c>0:
	count+=1
print(count)

### FIXED CODE ###

count=0
a,b,c=input()
if a=="1":
	count+=1
if b=="1":
	count+=1
if c=="1":
	count+=1
print(count)
N,M,K=map(int,input().split())
ans="No"
for x in range(N+1):
  a=K-x*M
  b=N-2*x
  if x!=0 and a%b==0 and 0<=a//b<M:
    print("Yes")
    exit()
print("No")

### FIXED CODE ###

N,M,K=map(int,input().split())
for n in range(0,N+1):
  for m in range(0,M+1):
    if n*M+m*N-2*n*m==K:
      print("Yes")
      exit(0)
print("No")
x,y = input().split()
x = int(x)
y = int(y)
while True:
    if x < y:
        print(y,x)
    elif x > y:
        print(x,y)
    else x==0 and y==0:
        break
    


### FIXED CODE ###


while True:
    x,y = input().split()
    x = int(x)
    y = int(y)
    if x==0 and y==0:
        break
    elif x<y:
        print(x,y)
    elif x>=y:
        print(y,x)
n,m = int(input().split())
if m==n:
  print("Yes")
else:
  print("No")

### FIXED CODE ###

n,m = map(int, input().split())
if n==m:
  print("Yes")
else:
  print("No")
n = int(input())
zen=[]
ab=[]
ba=[]
for i in range(n):
    a,b=map(int, input().split())
    zen.append([a,b])
    ab.append(a/b)
    ba.append(b/a)

ba=sorted(ba)
from bisect import bisect_left, bisect_right
from collections import defaultdict
kosudic=defaultdict(int)
for i in range(n):
    a,b=zen[i][0],zen[i][1]
    x=-a/b
    #print(x)
    l=bisect_left(ba, x)
    r=bisect_right(ba, x)
    #print(l,r)
    search=ba[l:r]
    kosu=sum([1 for j in search if abs(j-x)<10**(-10)])
    kosudic[kosu]+=1

ans=1
maxs=max(kosudic.keys())
#print(kosudic)

for i in range(maxs,-1,-1):
    if kosudic[i]!=0 and i!=1:
        ans*=(i**2+1)**kosudic[i]
        kosudic[1]-=i
    if i==1:
        ans*=3**(kosudic[1]//2)
    if i==0:
        ans*=2**kosudic[0]

print(ans-1)

### FIXED CODE ###

from math import gcd
from collections import defaultdict

n=int(input())
abd=defaultdict(int)
mod=10**9+7
wzero=0
azero=0
bzero=0
for i in range(n):
    a,b=map(int,input().split())
    if a==0 and b==0:
        wzero+=1
    elif a==0 and b!=0:
        azero+=1
    elif a!=0 and b==0:
        bzero+=1
    else:
        g=gcd(a,b)
        a=a//g
        b=b//g
        abd[(a,b)]+=1

liskey=list(abd.keys())
ans=1
for k in liskey:
    if abd[k] != 0:
        a,b=k
        x=abd[(a,b)]+abd[(-a,-b)]
        y=abd[(-b,a)]+abd[(b,-a)]
        abd[(a,b)]=0
        abd[(-a,-b)]=0
        abd[(-b,a)]=0
        abd[(b,-a)]=0
        ans*=(2**x+2**y-1+mod)%mod
        ans%=mod

ans*=(2**azero+2**bzero-1)
ans%=mod
ans=(ans+wzero)%mod
ans=(ans+mod-1)%mod
print(ans)
list=[int(input()) for i in range(5)]
sum=0
max=0
for x in list:
  y = -(-x//10)*10
  sum+=y
  max=(y-x, max)
print(sum-max)

### FIXED CODE ###

X=[int(input()) for i in range(5)]
Y=[]
for x in X:
  Y.append(-(-x//10)*10-x)
print(sum(X)+sum(Y)-(max(Y)))
n, k, c = map(int, input().split())
s = list(input())
cnt = s.count('o')
os = [i for i,x in enumerate(s) if x=='o']

from collections import deque

q = deque(os.copy())
_q1 = q.popleft()
m = k-1
l = [_q1]
while q and m > 0:
    _q2 = q.popleft()
    if _q2 - _q1 > c:
        l.append(_q2)
        _q1 = _q2
        m -= 1
        if m == 0:
            q = deque([])
    else:
        pass

# print(l)

q = deque(os.copy())
_q2 = q.pop()
m = k-1
r = [_q2]
while q and m > 0:
    _q1 = q.pop()
    if _q2 - _q1 > c:
        r.append(_q1)
        _q2 = _q1
        m -= 1
        if m == 0:
            q = deque([])
    else:
        pass

r = list(reversed(r))

# print(r)

ans = 0
for _l, _r in zip(l, r):
    if _l == _r:
        print(_l+1)
        ans = 1

if ans == 0:
    print()

### FIXED CODE ###

n, k, c = map(int, input().split())
s = list(input())
# cnt = s.count('o')
os = [i for i,x in enumerate(s) if x=='o']

from collections import deque

q = deque(os.copy())
_q1 = q.popleft()
m = k-1
l = [_q1]
if m > 0:
    while q:
        _q2 = q.popleft()
        if _q2 - _q1 > c:
            l.append(_q2)
            _q1 = _q2
            m -= 1
            if m == 0:
                q = deque([])
        else:
            pass

q = deque(os.copy())
_q2 = q.pop()
m = k-1
r = [_q2]
if m > 0:
    while q:
        _q1 = q.pop()
        if _q2 - _q1 > c:
            r.append(_q1)
            _q2 = _q1
            m -= 1
            if m == 0:
                q = deque([])
        else:
            pass

r = list(reversed(r))

ans = 0
for _l, _r in zip(l, r):
    if _l == _r:
        print(str(_l+1))
        ans = 1

if ans == 0:
    print()
a,b,c,k = list(map(int,input().split()))	

 if result > 10 **18:
    print("Unfair")
elif k % 2 == 0:
    print(result)
elif l % 2 == 1:
    result = result * -1
    print(result)

### FIXED CODE ###

a,b,c,k = list(map(int,input().split()))	
x = 10 **18
result = a - b
if result > x:
    print("Unfair")
elif k % 2 == 0:
    print(result)
elif k % 2 == 1:
    result = result * -1
    print(result)
XN = input().split()
X = int(XN[0])
N = int(XN[1])
if N == 0:
    print(X)
else:
    p = input.split()
    A = [None]*N
    for i in range(N):
        A[i] = abs(int(p[i])-X)
    j = 0
    while j in A:
        j += 1
    if j == 1:
        print(X-j)
    else:
        if A.count(j-1) == 2:
            print(X-j)
        else:
            if str(X-(j-1)) in p:
                print(X+(j-1))
            else:
                print(X-(j-1))

### FIXED CODE ###

XN = input().split()
X = int(XN[0])
N = int(XN[1])
if N == 0:
    print(X)
else:
    p = input().split()
    A = [None]*N
    for i in range(N):
        A[i] = abs(int(p[i])-X)
    if 0 not in A:
        print(X)
    else:
        j = 1
        while A.count(j) == 2:
            j += 1
        if A.count(j) == 0:
            print(X-j)
        else:
            if str(X-j) in p:
                print(X+j)
            else:
                print(X-j)
from sys import stdin
# import math
import numpy as np
# N = int(stdin.readline().rstrip().split()[0])
# A = [int(x) for x in stdin.readline().rstrip().split()]
# N, X = [int(x) for x in stdin.readline().rstrip().split()]
# S = stdin.readline().rstrip().split()[0]

N = int(stdin.readline().rstrip().split()[0])
S = stdin.readline().rstrip().split()[0]

white = S.count(".")
ans1=0
if white == N:
  ans1=0
else:
  first_black = S.index("#")
  ans1 = white - first_black
  
ans2=0
black = N-white
last_white = S[::-1].index(".")
ans2=black-last_white

if ans1>ans2:
  print(ans2)
else:
  print(ans1)


### FIXED CODE ###

from sys import stdin
# import math
import numpy as np
# N = int(stdin.readline().rstrip().split()[0])
# A = [int(x) for x in stdin.readline().rstrip().split()]
# N, X = [int(x) for x in stdin.readline().rstrip().split()]
# S = stdin.readline().rstrip().split()[0]

N = int(stdin.readline().rstrip().split()[0])
S = stdin.readline().rstrip().split()[0]

B =[]
W =[]
b=0
w=0
for i in range(N):
  if S[i]==".":
    w+=1
  W.append(w)
  
  if S[N-1-i]=="#":
    b+=1
  B.append(b)

W=np.array(W)
B=np.array(B[::-1])
ans = N-np.max(W+B)
print(ans)
D=input()
if D=="22":
  print("Christmas Eve Eve Eve")
elif D=="23":
  print(Christmas Eve Eve")
elif D=="24":
  print("Christmas Eve")
else:
  print'"Christmas")

### FIXED CODE ###

D=input()
if D=="22":
  print("Christmas Eve Eve Eve")
elif D=="23":
  print("Christmas Eve Eve")
elif D=="24":
  print("Christmas Eve")
else:
  print("Christmas")