Harryxun/stf_run huggingface dataset:
nums = input().split().split()
a = int(nums[0])
b = int(nums[1])
c = int(nums[2])
if a < b < c
    print('Yes')
else:
    print('No')

### FIXED CODE ###

nums = input().split()
a = int(nums[0])
b = int(nums[1])
c = int(nums[2])
if a < b < c:
    print('Yes')
else:
    print('No')
S = input()
K = int(input())
length = len(S)
alpha, n = 'abcdefghijklmnopqrstuvwxyz', 26
i = 0
ans = ''
while i < length:
    diff = (n - (ord(S[i]) - ord('a'))) % 26
    
    if 0 <= diff <= K:
        ans += 'a'
        K -= diff
    else:
        ans += S[i]
        
    i += 1
    if K == 0:
        ans += S[i:]
else:
    print(K)
    ans = ans[:-1] + chr(ord(ans[-1]) + K % 26)
print(ans)

### FIXED CODE ###

S = input()
K = int(input())
length = len(S)
alpha, n = 'abcdefghijklmnopqrstuvwxyz', 26
i = 0
ans = ''
while i < length:
    diff = (n - (ord(S[i]) - ord('a'))) % 26
    
    if 0 <= diff <= K:
        ans += 'a'
        K -= diff
    else:
        ans += S[i]
    i += 1
if K: ans = ans[:-1] + chr(ord('a') + (ord(ans[-1]) - ord('a') + K) % 26)
print(ans)
x,y = map(int(input().sprit)
d = y
a = (d*7)%9
b = (d-a*4)
c = n-a-b
if c>=0 and b>=0:
    print(b,a,c)
else:
    print(-1,-1,-1)


### FIXED CODE ###

N, Y = map(int, input().split())
Y //= 1000
k = min((Y - N) // 4, Y // 5)
if 9 * k >= 2 * (Y - N):
    x = (Y - N) - 4 * k
    y = -2 * (Y - N) + 9 * k
    z = Y - 5 * k
    print(x, y, z)
else:
    print(-1, -1, -1)
A,B,C=map(int,sinput().split())
if(C>=A-B):
  print(C-(A-B))
else:
  print(0)

### FIXED CODE ###

A,B,C=map(int,input().split())
if(C>=A-B):
  print(C-(A-B))
else:
  print(0)
= int(input())
alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
def norm(n, prev_list):
	out_list = []
	for line in prev_list:
		for i in range(len(set(line))+1):
			new_line = line + az[i]
			out_list.append(new_line)
	return out_list
init_line = ['a']
for _ in range(N-1):
	init_line = norm(1, init_line)
for line in init_line:
	print(line)

### FIXED CODE ###

N = int(input())
az = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
def norm(n, in_list):
	out_list = []
	for line in in_list:
		for i in range(len(set(line))+1):
			new_line = line + az[i]
			out_list.append(new_line)
	return out_list
init_line = ['a']
for _ in range(N-1):
	init_line = norm(1, init_line)
for line in init_line:
	print(line)
def main(s: str):
    if re.fullmatch(r"A?KIHA?BA?RA?", s):
        print("YES")
    else:
        print("NO")


if __name__ == "__main__":
    s = input()

    main(s)


### FIXED CODE ###

import re


def main(s: str):
    if re.fullmatch(r"A?KIHA?BA?RA?", s):
        print("YES")
    else:
        print("NO")


if __name__ == "__main__":
    s = input()

    main(s)
x,y = map(int,input().split())
if x + y == 2:
  print(100000)
elif x + y == 3:
  print(50000)
elif x + Y == 5:
  print(30000)
elif x + Y == 4:
  print(40000)
elif x + Y == 6:
  print(20000)
else:
  print(0)


### FIXED CODE ###

x,y = map(int,input().split())
if x + y == 2:
  print(1000000)
elif x + y == 3:
  print(500000)
elif x + y == 5:
  print(300000)
elif x + y == 4:
  print(400000)
elif x + y == 6:
  print(200000)
elif x + y >=5 and min(x,y) == 1:
  print(300000)
elif x + y >=5 and min(x,y) == 2:
  print(200000)
elif x + y >=5 and min(x,y) == 3:
  print(100000)
else:
  print(0)
def dp(n):
    d=[0]*(n+1)
    if n==1:
        return 1
    else:
         d[0]=1
         if a[1]==0:
            d[1]=1
         else:
            d[1]=0
         for i in range(2,n+1):
            if a[i]==0:
                d[i]=(d[i-1]+d[i-2])%1000000007
            else:
                d[i]=0
         return d[n]

n,m=map(int, input().split())
a=[0]*(n+1)
for i in range(0,m):
    k=int(input())
    a[k]=1
print(dp(n))

### FIXED CODE ###

a,b,c=map(int,input().split())
print(min(a+b,b+c,c+a))
n = input()
for i in range(11):
  if 1000*i >= n:
    print(n - 1000*i)
    exit()

### FIXED CODE ###

n = int(input())
for i in range(11):
  if 1000*i >= n:
    print(1000*i - n)
    exit()
a, b = map(int, input())
print(a if a <= b else a-1)

### FIXED CODE ###

a, b = map(int, input().split())
print(a if a <= b else a-1)
n,m,x=map(int, input().split())
a=map(int, input().split())

left=0
right=0

for i in a:
  if x > int(i):
    left += 1
  elif x < int(i):
    righit += 1
print(min(left,right))

### FIXED CODE ###

n,m,x=map(int,input().split())
s=sum(int(i)<x for i in input().split())
print(min(s,m-s))
print('YNeos'[2in input()::2])

### FIXED CODE ###

print('YNeos'['2'in input()::2])
K,N=map(int,input().split())
a,b,c=map(int,input().split())
print(min(c-a,K-b+a,b+K-c))

### FIXED CODE ###

K,N=map(int,input().split())
A=[int(i) for i in input().split()]
ma=K-A[-1]+A[0]
for i in range(N-1):
    Z=A[i+1]-A[i]
    ma=max(ma,Z)
print(K-ma)
import sys
n, m, k = list(map(int, input().split()))
a = list(map(int, input().split()))
b = list(map(int, input().split()))

a_=[]
b_=[]
tmp = 0
for i in a:
    tmp += i
    a_.append(tmp)
tmp = 0
for i in b:
    tmp += i
    b_.append(tmp)

if a_[0]>k and b_[0]>k:
    print(0)
    sys.exit()

if a_[0]>k:
    asn=0
    for i in b_:
        asn+=1
        if i > k:
            print(asn)
            sys.exit()

if b_[0]>k:
    asn=0
    for i in a_:
        asn+=1
        if i > k:
            print(asn)
            sys.exit()

ans=0
j = m-1
for i in range(n):
    if a_[i] > k:
        continue
    while b_[j] + a_[i] > k:
        j -= 1
    ans = max(ans,i+j+2)
print(ans)


### FIXED CODE ###

import sys
n, m, k = list(map(int, input().split()))
a = list(map(int, input().split()))
b = list(map(int, input().split()))

a_=[0]
b_=[0]
tmp = 0
for i in a:
    tmp += i
    a_.append(tmp)
tmp = 0
for i in b:
    tmp += i
    b_.append(tmp)

ans=0
j = m
for i in range(n+1):
    if a_[i] > k:
        continue
    while b_[j] + a_[i] > k:
        j -= 1
    ans = max(ans,i+j)
print(ans)
N = input()
print((10000 - N) % 1000)

### FIXED CODE ###

N = int(input())
print((10000 - N) % 1000)
n, r = int(input().split())

if n >= 10 :
    ans = r
else :
    ans = r + 100 * (10 - n)


### FIXED CODE ###

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

if n >= 10 :
    ans = r
else :
    ans = r + 100 * (10 - n)

print(ans)
s,t=input().split()
ans=0
for i range(3):
    if s[i]==t[i]:
        ans+=1
print(ans)

### FIXED CODE ###

s=input()
t=input()
ans=0
for i in range(3):
    if s[i]==t[i]:
        ans+=1
print(ans)
@patch('builtins.input', test.test_input)
def main():
    n = int(input())
    h = list(map(int, input().split()))
    
    pre = h[0]
    for hh in h:
        if hh < pre:
            if hh >= pre - 1:
                pre = hh
            else:
                print('No')
                return
        pre = hh
        
    print('Yes')
    
if __name__ == '__main__':
    main()

### FIXED CODE ###

def main():
    n = int(input())
    h = list(map(int, input().split()))
    
    pre = h[0]
    for hh in h:
        if hh < pre-1:
            print('No')
            return
        pre = max(pre, hh)
        
    print('Yes')
    
if __name__ == '__main__':
    main()
from collections import deque

n, m = list(map(int, input().split()))
AB = [[int(x) for x in input().split()] for _ in range(m)]

# representation matrix
repn = [[] for j in range(n)]
for a, b in AB:
    a -= 1
    b -= 1
    repn[a].append(b)
    repn[b].append(a)


# Minimum Spanning Tree
tree = [[] for i in range(n)]
visited = [True] + [False] * (n - 1)
depth = [0] * n
max_dep = 0
q = deque([(0, 0)]) # (vertex, depth)

while q:
    u, d = q.pop()
    for v in repn[u]:
        if visited[v]:
            continue
        visited[v] = True
        tree[u].append(v)
        tree[v].append(u)
        depth[v] = d + 1
        max_dep = max(max_dep, d + 1)
        q.append((v, d + 1))


# define directions of the edges other than that of MST
degree = [0] * n
ans = []

for a, b in AB:
    a -= 1
    b -= 1
    if b in tree[a]:
        continue
    ans.append([a, b])
    degree[a] += 1


# defining orientations
def dfs(u = 0, parent = None):
    for v in tree[u]:
        if v == parent:
            continue
        dfs(v, u)
        if degree[v] % 2 == 0:
            ans.append([u, v])
            degree[u] += 1
        else:
            ans.append([v, u])
            degree[v] += 1

dfs()


# output answer
if degree[0] % 2 == 1:
    print(-1)
else:
    for pair in ans:
        c, d = pair
        c += 1
        d += 1
        print(' '.join(map(str, [c, d])))


### FIXED CODE ###

import sys
input = sys.stdin.readline
sys.setrecursionlimit(10**6)
from collections import deque

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

if m % 2 == 1:
    print(-1)
    exit()



AB = [[int(x) for x in input().split()] for _ in range(m)]

# representation matrix
repn = [[] for j in range(n + 1)]
for a, b in AB:
    repn[a].append(b)
    repn[b].append(a)


# Minimum Spanning Tree
tree = [set() for i in range(n + 1)]
visited = [False] * (n + 1)
visited[1] = True
q = deque([1])

while q:
    u = q.popleft()
    for v in repn[u]:
        if visited[v]:
            continue
        visited[v] = True
        tree[u].add(v)
        tree[v].add(u)
        q.append(v)


# define directions of the edges other than that of MST
degree = [0] * (n + 1)
ans = []

for a, b in AB:
    if b in tree[a]:
        continue
    ans.append('{} {}'.format(a, b))
    degree[a] += 1


# defining orientations
def dfs(u = 1, parent = None):
    for v in tree[u]:
        if v == parent:
            continue
        dfs(v, u)
        if degree[v] % 2 == 0:
            ans.append('{} {}'.format(u, v))
            degree[u] += 1
        else:
            ans.append('{} {}'.format(v, u))
            degree[v] += 1

dfs()

print('\n'.join(ans))
N, K = map(int,input().split())
h = [int(input()) for i in range(N)].sort()
# print(h)

MIN = 10**10
for i in range(N-K):
	if h[i+K-1] - h[i] <= MIN:
		MIN = h[i+K-1] - h[i]
#	print(i,h[i],h[i+K-1])
print(MIN)



### FIXED CODE ###

N, K = map(int,input().split())
h = [0 for i in range(N)]
for i in range(N):
	h[i] = int(input())
h.sort()
# print(h)

MIN = 10**10
for i in range(N-K+1):
	if h[i+K-1] - h[i] <= MIN:
		MIN = h[i+K-1] - h[i]
# print(i,h[i],h[i+K-1])
print(MIN)
n = input()
k = int(input())

if n.count("1") == len(k):
  print(1)
  exit()

for i in range(k):
  
  if n[i] != "1":
    print(n[i])
    exit()

    


### FIXED CODE ###

n = input()
k = int(input())
ans = 1

for i in range(k):
  
  if n[i] != "1":
    ans = n[i]
    break

print(ans)
n=int(input())
tmp, ans=0,0
for i in range(n):
  a=int(input())
  if a=0:
    ans+=tmp//2
    tmp=0
  else:
    tmp+=a
print(ans)


### FIXED CODE ###

n=int(input())
tmp, ans=0,0
for i in range(n):
  a=int(input())
  if a==0:
    ans+=tmp//2
    tmp=0
  else:
    tmp+=a
print(ans+tmp//2)
a, b, c = sorted(input().split())
 print(a, b, c)

### FIXED CODE ###

a, b, c = sorted(input().split())
print(a, b, c)
a,b=(int (x) for x in input().split())
if a<=5:
  print(0)
elif a<=12:
  print(int((b/2))
else:
  print(b)

### FIXED CODE ###

a,b=(int (x) for x in input().split())
if a<=5:
  print(0)
elif a<=12:
  print(int(b/2))
else:
  print(b)
a=list(map(int,input().split()))
n=a[0]
a[0]=a[1]
a[1]=a[2]
a[2]=n
print (f"{a[0]} {a[1]} {a[2]}")

### FIXED CODE ###


A = list(map(int,input().split()))
n = A[0]
A[0] = A[2]
A[2] = A[1]
A[1] = n
print(A[0], A[1], A[2])
n=int(input())
a=[map(int,input().split()) for i in range(n)]
b=a[0]
def gcd(x,y):
  while y:
    x,y=y,x%y
  return x

for i in a:
  b=gcd(b,i)
print(b)

### FIXED CODE ###

n=int(input())
a=[int(i) for i in input().split()]
b=a[0]
def gcd(x,y):
  while y:
    x,y=y,x%y
  return x

for i in a:
  b=gcd(b,i)
print(b)
#C
n = int(input())
a = []
testimony = []
ans = 0
for i in range(n):
    a.append(int(input()))#証言の個数
    l = []
    if a[i] == 0:
        l.append([])
        continue
    for j in range(a[i]):
        l.append(list(map(int, input().split())))
    testimony.append(l)#iの人のa[i]個の証言のリスト
for i in range(2**n):
    for j in range(n):
        if (i >> j) & 1 and a[n-1-j] != 0:
            for k in range(a[n-1-j]):
                if (i >> (n - testimony[n-1-j][k][0])) != testimony[n-1-j][k][1]:
                    break
            else:
                continue
            break
    else:
        ans = max(ans, str(bin(i)).count('1'))
print(ans)

### FIXED CODE ###

#C
n = int(input())
a = []
testimony = [-1]*n
ans = 0
for i in range(n):
    a.append(int(input()))#証言の個数
    l = []
    for j in range(a[i]):
        l.append(list(map(int, input().split())))
    if l != []:
        testimony[i] = l#iの人のa[i]個の証言のリスト
for i in range(2**n):
    for j in range(n):
        if (i >> j) & 1 and testimony[n-1-j] != -1:
            for k in range(a[n-1-j]):
                if ((i >> (n - testimony[n-1-j][k][0])) & 1) != testimony[n-1-j][k][1]:
                    break
            else:
                continue
            break
    else:
        ans = max(ans, str(bin(i)).count('1'))
print(ans)
y Season

S=input()

ans=0

for i in range (len(S)-1):
    if S[i]=="R":
        tempans=1
        for j in range (i+1,len(S)):
            if S[i]==S[j]:
                tempans+=1
            else:
                if tempans>ans:
                    ans=tempans
                break
        else:
            if tempans>ans:
                ans=tempans
print(ans)

### FIXED CODE ###

# AtCoder Beginner Contest 175

S=input()
if S=="SSS":
    print(0)
    exit()
if S=="SRR" or S=="RRS":
    print(2)
    exit()
if S=="RRR":
    print(3)
    exit()
else:
    print(1)
import math
from functools import reduce
n = int(input())
li = list(map(int,input().split()))
print(reduce(math.gcd,li))

### FIXED CODE ###

from fractions import gcd
from functools import reduce
n = int(input())
li = list(map(int,input().split()))
print(reduce(gcd,li))
N,M = map(int,input().split())
A = set()
for i in range(M):
    A.append(int(input()))
count = [0] * (N+1)
count[0] = 1
mod = 10 ** 9 + 7
if 1 in A:
    if 2 in A:
        print(0)
        exit()
    count[2] = 1
    start = 3
else:
    count[1] = 1
    start = 2
for i in range(start, N+1):
    if i in A:
        continue
    count[i] = count[i-1] + count[i-2]
    count[i] %= mod
print(count[N])

### FIXED CODE ###

N, M = map(int, input().split())
MOD = 10 ** 9 + 7
dp = [0] * (N+1)
dp[0] = 1
a = set()
for _ in range(M):
    a.add(int(input()))
if 1 in a:
    if 2 in a:
        print(0)
        exit()
    dp[2] = 1
    start = 3
else:
    dp[1] = 1
    start = 2
for i in range(start, N+1):
    if i in a:
        continue
    dp[i] = dp[i-1] + dp[i-2]
    dp[i] %= MOD
print(dp[N])
from heapq import heapify, heappop, heappush
up=2*10**5
maxi=10**9+1
kind=[[] for i in range(up)]
kind_d=[[] for i in range(up)]

class segtree:
    x_unit=maxi # 要素として入れられる最大値
    x_func=min
    def __init__(self,n):
        self.n=n
        self.x=[self.x_unit]*(2*n)
    def build(self, seq):
        for i,j in enumerate(seq, start=self.n):  # n番目からseqをx配列に移していく
            self.x[i] = j
        for i in range(self.n-1, 0, -1):
            self.x[i] = self.x_func(self.x[i*2], self.x[i*2+1])
            # セグ木トーナメント表の左右を比較
            # 例えばn=8の時、seq[4]はx[12]に、seq[5]はx[13]に入っている
            # さらにx[14]とx[15]の間に来るのはx[7]、x[12]とx[13]の間に来るのはx[6]
            # x_funcに従って値を取得
    def set_val(self,i,j): # 1点更新
        i += self.n
        self.x[i]=j
        while i>1:
            i//=2 # 更新後、木の上へと登っていくついでに更新
            self.x[i]=self.x_func(self.x[i*2], self.x[i*2+1])
    def fold(self,l,r): # 区間[l, r)の最小値などを取得 
        l+=self.n
        r+=self.n
        val_l=self.x_unit
        val_r=self.x_unit
        while l<r:
            if l & 1: # lが奇数
                val_l=self.x_func(val_l,self.x[l])
                l+=1 # 偶数に調節
            if r & 1: # rが奇数
                r-=1 # 開区間なので1個前は偶数番目の要素
                val_r=self.x_func(val_r,self.x[r])
            l //= 2
            r //= 2
        return self.x_func(val_l,val_r)

n,q=map(int, input().split())
shozoku=[-1]*n
rating=[0]*n
for i in range(n):
    a,b=map(int, input().split())
    heappush(kind[b-1],-a)
    shozoku[i]=b-1
    rating[i]=a
#print(kind)
seg=segtree(up)
root=[maxi for i in range(up)]

for i in range(up):
    if kind[i]:
        rate=-heappop(kind[i])
        root[i]=rate
        heappush(kind[i],-rate)
seg.build(root)

for i in range(q):
    c,d=map(int, input().split())
    c-=1
    d-=1
    rc=rating[c]
    sc=shozoku[c]
    if rc==seg.fold(sc,sc+1):
        while kind_d[sc]:
            q1=heappop(kind_d[sc])
            q2=heappop(kind[sc])
            if q1!=q2:
                heappush(kind_d[sc],q1)
                heappush(kind[sc],q2)
                break
        heappop(kind[sc])
        if kind[sc]:
            while kind[sc] and kind_d[sc]:
                q2=heappop(kind[sc])
                q1=heappop(kind_d[sc])
                if q1==q2:
                    continue
                else:
                    seg.set_val(sc, -q2)
                    heappush(kind[sc],q2)
                    heappush(kind_d[sc],q1)
                    break
        if not kind[sc]:
            seg.set_val(sc, maxi)
        else:
            q2=heappop(kind[sc])
            seg.set_val(sc, -q2)
            heappush(kind[sc],q2)
    else:
        heappush(kind_d[sc], -rc)
    heappush(kind[d],-rc)
    new=seg.fold(d,d+1)
    if rc>new or new==maxi:
        seg.set_val(d, rc)
    shozoku[c]=d
    print(seg.x[1])


### FIXED CODE ###

*x,=map(int, input().split())
for i in range(5):
    if x[i]==0:
        print(i+1)
        break
x = [int(input()) for i in range(5)]
a=[]
for i in x:
  a.append(i%10)
while 0 in a:
  a.remove(0)
b=sorted(a)
y=0
for i in x:
  if i%10==0:
    y+=i
  else:
    y+=(i+(10-(i%10)))
print(y-(10-b[0]))


### FIXED CODE ###

x = [int(input()) for i in range(5)]
y=0
for i in x:
  if i%10==0:
    y+=i
  else:
    y+=(i+(10-(i%10)))
a=[]
for i in x:
  a.append(i%10)
if a.count(0)!=5:
  while 0 in a:
    a.remove(0)
  b=sorted(a)
  print(y-(10-b[0]))
else:
  print(y)
import string
az = list(string.ascii_lowercase)
li = [0 for a in range(len(az))]

while True:
    a = raw_input()
    if a != '':
        for b in list(a):
            if b.lower() in az:
                tmp = az.index(a.lower())
                li[tmp] = li[tmp] + 1
    else:
        break

for c in range(len(az)):
    print abc[c] + ' : ' + str(li[c])

### FIXED CODE ###

import string
az = list(string.ascii_lowercase)
li = [0 for a in range(len(az))]

while True:
    try:
        a = raw_input()
        for b in list(a):
            if b.lower() in az:
                tmp = az.index(b.lower())
                li[tmp] = li[tmp] + 1
    except:
        break

for c in range(len(az)):
    print az[c] + ' : ' + str(li[c])
N, K = list(map(int, input().split()))
H = []
for i in range(N):
        h = int(input())
        H.append(h)

H.sort()
ans = []

for i in range(N-K-1):
        # print(i)
        dif = H[i+K-1] - H[i]
        ans.append(dif)

print(min(ans))
        

### FIXED CODE ###

n,k=map(int,input().split())
H=[]
for i in range(n):
    H.append(int(input()))
 
H.sort()
 
#print(H)
 
ans=H[n-1]-H[0]
 
for i in range(n-k+1):
    #print(H[i+k-1]-H[i])
    ans=min(ans,H[i+k-1]-H[i])
 
print(ans)
N = int(input())

cnt=0
for i in range(1,N+1):
    new = [int(d) for d in str(i)]
    print(new)
    sento=new[0]
    matu=new[-1]
    keta=len(new)

    if matu!='0':
        new[0]=matu
        new[-1]=sento
        comb=''.join(new)
        if matu==sento:
            cnt+=max(0,len(new)-1)
        elif comb>N:
            for j in range(0,keta-2):
                cnt+=9**j
        elif comb<N:
            for j in range(0,keta-1):
                cnt+=9**j







print(cnt)


### FIXED CODE ###

N = int(input())

A = [list(0 for i in range(9)) for _ in range(9)]

for i in range(1,N+1):
    new = [int(d) for d in str(i)]
    if  new[-1]!=0:
        A[new[0]-1][new[-1]-1]+=1

cnt=0
for i in range(9):
    for j in range(9):
        cnt+=A[i][j]*A[j][i]

print(cnt)
import math
X=int(input())

for i in range(X):
  if　isinstance(pow(1/5, X+pow(5,i)), int)=='true'
    break
    
print(pow(1/5, X+pow(5,i),i)

### FIXED CODE ###

import math
X=int(input())
c=0
for i in range(200):   
  for j in range(-200,200):
    if i**5-j**5==X:
      c=1
      break
      
  if c==1:
    break
      
print(i,j)
N, M = [int(s) for s in input().split(' ')]
ac = 0
wa = 0
result = dict()
fail = dict()
for m in range(M):
    p, s = input().split(' ')
    if p in result and result[p] == 'AC':
        continue
    if s == 'WA':
        fail[p] = fail.get(p, 0) + 1
        result[p] = s
    elif s == 'AC': # AC
        ac += 1
        wa += fail[p]
        result[p] = s
    
print(str(ac) + ' ' + str(wa))


### FIXED CODE ###

N, M = [int(s) for s in input().split(' ')]
ac = 0
wa = 0
result = dict()
fail = dict()
for m in range(M):
    p, s = input().split(' ')
    if p in result and result[p] == 'AC':
        continue
    if s == 'WA':
        fail[p] = fail.get(p, 0) + 1
        result[p] = s
    elif s == 'AC': # AC
        ac += 1
        wa += fail.get(p, 0) 
        result[p] = s
    
print(str(ac) + ' ' + str(wa))
N,M=map(int,input().split())
a=[]
for i in range(M):
    a.append(int(input()))
j=M-1
if a[0]==1:
    f1=0
    f2=1
elif a[0]==2:
    f1=1
    f2=1
else:
    f1=1
    f2=2
def f(n,a,j):
    if n>2:
        if (n-1)!=a[j] and (n-2)!=a[j]:
            if n>3 and n-3==a[j]:
                return f(n-1,a,j)+f(n-2,a,j-1)
            else:
                return f(n-1,a,j)+f(n-2,a,j)
        elif (n-1)==a[j]:
             if n>3 and j>0 and n-3==a[j-1]:
                return f(n-2,a,j-1)
             else:
                return f(n-2,a,j)
        elif (n-2)==a[j]:
            return f(n-1,a,j-1)
    elif n==1:
        return f1
    else:
        return f2
print(f(N,a,j))

### FIXED CODE ###

N,M=map(int,input().split())
a=[]
b=[0]*N
for i in range(M):
    a.append(int(input()))
if M==0:
    j=-1
else:
    j=0
if N==1:
    b[0]=1
elif M>0 and a[0]==1:
    b[0]=0
    b[1]=1
elif M>0 and a[0]==2:
    b[0]=1
    b[1]=1
else:
    b[0]=1
    b[1]=2
for i in range(N-2):
    if j==M-1 or (j>=0 and (i+2)!=a[j] and (i+1)!=a[j]):
        b[i+2]=b[i+1]+b[i]
    if j>0 and a[j]==a[j-1]+1:
        b[N-1]=0
    if j+1<M and a[j+1]==a[j]+1:
        b[N-1]=0
    elif j>=0 and (i+2)==a[j]:
        b[i+2]=b[i]
    elif j>=0 and j+1<M and (i+1)==a[j]:
        j+=1
        b[i+2]=b[i+1]
    elif j>=0 and (i+1)==a[j]:
        b[i+2]=b[i+1]
print(b[N-1]%1000000007)
a, b, h = map(int, input().split())

S = (a + b) * h // 2

print(S)

### FIXED CODE ###

a,b,h=map(int,open(0));print((a+b)*h//2)