You have probably registered on Internet sites many times. And each time you should enter your invented password. Usually the registration form automatically checks the password's crypt resistance. If the user's password isn't complex enough, a message is displayed. Today your task is to implement such an automatic check.

Web-developers of the company Q assume that a password is complex enough, if it meets all of the following conditions:  the password length is at least 5 characters;  the password contains at least one large English letter;  the password contains at least one small English letter;  the password contains at least one digit. 

You are given a password. Please implement the automatic check of its complexity for company Q.


-----Input-----

The first line contains a non-empty sequence of characters (at most 100 characters). Each character is either a large English letter, or a small English letter, or a digit, or one of characters: "!", "?", ".", ",", "_".


-----Output-----

If the password is complex enough, print message "Correct" (without the quotes), otherwise print message "Too weak" (without the quotes).


-----Examples-----
Input
abacaba

Output
Too weak

Input
X12345

Output
Too weak

Input
CONTEST_is_STARTED!!11

Output
Correct

Difficulty: interview

Starter code:

Solutions:
s = input().strip()
flag1 = len(s) >= 5
d1 = 'qwertyuiopasdfghjklzxcvbnm'
d2 = 'QWERTYUIOPASDFGHJKLZXCVBNM'
d3 = '123456789'
flag2 = False
flag3 = False
flag4 = False

for i in d1:
    if i in s:
        flag2 = True
for i in d2:
    if i in s:
        flag3 = True
for i in d3:
    if i in s:
        flag4 = True  
if(flag1 and flag2 and flag3 and flag4):
    print("Correct")
else:
    print("Too weak")



s = input().strip()
flag1 = len(s) >= 5
d1 = 'qwertyuiopasdfghjklzxcvbnm'
d2 = 'QWERTYUIOPASDFGHJKLZXCVBNM'
d3 = '1234567890'
flag2 = False
flag3 = False
flag4 = False

for i in d1:
    if i in s:
        flag2 = True
for i in d2:
    if i in s:
        flag3 = True
for i in d3:
    if i in s:
        flag4 = True  
if(flag1 and flag2 and flag3 and flag4):
    print("Correct")
else:
    print("Too weak")



import re
a1=re.compile('[a-z]')
a2=re.compile('[A-Z]')
a3=re.compile('[0-9]')
s=input()
if len(s)>=5:
    s=list(s)
    ar=[0,0,0]
    for i in s:
            if(a1.match(i)!=None):
                    ar[0]+=1
    for i in s:
            if(a2.match(i)!=None):
                    ar[1]+=1
    for i in s:
            if(a3.match(i)!=None):
                    ar[2]+=1
    if (ar[0]!=0 and ar[1]!=0 and ar[2]!=0):
        print('Correct')
    else:
        print('Too weak')
else:
    print('Too weak')


s=input()
import string
a=1
for i in s:
    if i in string.ascii_lowercase:
        a*=2
    if i in string.ascii_uppercase:
        a*=3
    if i in string.digits:
        a*=5
print("Too weak" if (a%30 or len(s)<5) else "Correct")


S = input()
ans = 0
Ans = 0
ns = 0

for i in range(len(S)):
    k = ord(S[i])
    if k >= 48 and k <= 57:
        ns += 1
    elif k >=65 and k <= 90:
        Ans += 1
    elif k >= 97 and k <= 122:
        ans += 1
if ans != 0 and Ans != 0 and len(S) >= 5 and ns != 0:
    print('Correct')
else:
    print('Too weak')

s = input()
print('Correct' if len(s) >= 5 and any([elem.isupper() for elem in s]) and any([elem.islower() for elem in s]) and any([elem.isdigit() for elem in s]) else 'Too weak')

import re
a1=re.compile('[a-z]')
a2=re.compile('[A-Z]')
a3=re.compile('[0-9]')
s=input()
if len(s)>=5:
    s=list(s)
    ar=[0,0,0]
    for i in s:
            if(a1.match(i)!=None):
                    ar[0]+=1
    for i in s:
            if(a2.match(i)!=None):
                    ar[1]+=1
    for i in s:
            if(a3.match(i)!=None):
                    ar[2]+=1
    if (ar[0]!=0 and ar[1]!=0 and ar[2]!=0):
        print('Correct')
    else:
        print('Too weak')
else:
    print('Too weak')


s=input()
a=False
b=False
c=False
d=False
if(len(s)>=5):
    a=True
for i in range(len(s)):
    if(ord(s[i])>=ord('A') and ord(s[i])<=ord('Z')):
        b=True
    if(ord(s[i])>=ord('a') and ord(s[i])<=ord('z')):
        c=True
    if(ord(s[i])>=ord('1') and ord(s[i])<=ord('9')):
        d=True
if(a and b and c and d):
    print("Correct")
else:
    print("Too weak")


upreg=['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']
downreg=['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']
cifra=['1','2','3','4','5','6','7','8','9','0']
slovo=input()
flag=[0,0,0,0]
if len(slovo)>=5:
    flag[0]=1
for i in range(len(slovo)):
    simvol=slovo[i:i+1]
    if simvol in upreg:
        flag[1]=1
    if simvol in downreg:
        flag[2]=1
    if simvol in cifra:
        flag[3]=1
if flag[0] and flag[1] and flag[2] and flag[3]:
    print('Correct')
else:
    print('Too weak')


s = input()
up, low, digit = False, False, False
for ch in s:
    if ch.isdigit():
        digit = True
    elif ch.isalpha():
        if ch.isupper():
            up = True
        else:
            low = True
if len(s) >= 5 and up and low and digit:
    print('Correct')
else:
    print('Too weak')



s = input()
yes = True
yes &= len(s) >= 5
yes &= any(c.isupper() for c in s)
yes &= any(c.islower() for c in s)
yes &= any(c.isdigit() for c in s)

if yes:
    print('Correct')
else:
    print('Too weak')


def check(a):
    if len(a) < 5:
        return 0
    does_have_little = 0
    for elem in [chr(i) for i in range(ord('a'), ord('z') + 1)]:
        if elem in a:
            does_have_little = 1
            break
    if not does_have_little:
        return 0
    does_have_big = 0
    for elem in [chr(i) for i in range(ord('A'), ord('Z') + 1)]:
        if elem in a:
            does_have_big = 1
            break
    if not does_have_big:
        return 0
    number = 0
    for elem in [chr(i) for i in range(ord('0'), ord('9') + 1)]:
        if elem in a:
            number = 1
            break
    if not number:
        return 0
    return 1

a = input()
if check(a):
    print("Correct")
else:
    print("Too weak")

pw = input()

lg = case = numb = 0

if len(pw) >= 5:
    lg = 1
if pw.lower() != pw and pw.upper() != pw:
    case = 1
for i in pw:
    if i.isnumeric():
        numb = 1

#print(lg, case, numb)

if numb and case and lg:
    print('Correct')
else:
    print('Too weak')


str = input()
small = 0
big = 0
num = 0
for i in range(10):
    if chr(i + ord('0')) in str:
        num = 1
for i in range(26):
    if chr(i + ord('a')) in str:
        small = 1
for i in range(26):
    if chr(i + ord('A')) in str:
        big = 1
if len(str) >= 5 and big and small and num:
    print("Correct")
else:
    print("Too weak")


s = input()
if len(s) < 5:
    print("Too weak")
else:
    a = b = c = False
    for i in range(0, 26):
        if chr(ord('A') + i) in s:
            a = True
        if chr(ord('a') + i) in s:
            b = True
        if i < 10 and chr(ord('0') + i) in s:
            c = True
    if a and b and c:
        print("Correct")
    else:
        print("Too weak")

S = input()
lower, upper, number = False, False, False
L, U, N = [str(i) for i in range(10)], [chr(i) for i in range(ord('A'), ord('Z') + 1)], [chr(i) for i in range(ord('a'), ord('z') + 1)]

for letter in S:
    lower = lower or (letter in L)
    upper = upper or (letter in U)
    number = number or (letter in N)
if (len(S) >= 5 and lower and upper and number):
    print ("Correct")
else:
    print ("Too weak")


from math import*

def add_bit(n, k):
    return n | (1 << k)

s = input().strip()
ans = 0

if len(s) >= 5:
    ans = add_bit(ans, 0)

for i in range(len(s)):
    if s[i] >= 'a' and s[i] <= 'z':
        ans = add_bit(ans, 1)
    if s[i] >= 'A' and s[i] <= 'Z':
        ans = add_bit(ans, 2)
    if s[i] >= '0' and s[i] <= '9':
        ans = add_bit(ans, 3)

if ans == 15:
    print('Correct')
else:
    print('Too weak')

import re

def getAnswer(x):
    if len(x) < 5:
        return "Too weak"
    if (re.search('[A-Z]',x)) == None:
        return "Too weak"
    if (re.search('[a-z]',x)) == None:
        return "Too weak"
    if (re.search('[0-9]',x)) == None:
        return "Too weak"
    return "Correct"
def main():
    x = input()
    print(getAnswer(x))

main()

S = input()
a = len(S) >= 5
b, c, d = 0, 0, 0
for i in S:
    if 'A' <= i <= 'Z':
        b = 1
    if 'a' <= i <= 'z':
        c = 1
    if '0' <= i <= '9':
        d = 1
if a + b + c + d == 4:
    print("Correct")
else:
    print("Too weak")


def main():
    a = input()
    lower = False
    upper = False
    digit = False
    if len(a) >= 5:
        for c in a:
            lower = lower or c.islower()
            upper = upper or c.isupper()
            digit = digit or c.isdigit()
        if lower and upper and digit:
            print("Correct")
        else:
            print("Too weak")
    else:
        print("Too weak")

main()

print('Correct' if (lambda s: len(s) >= 5 and any([elem.isupper() for elem in s]) and any([elem.islower() for elem in s]) and any([elem.isdigit() for elem in s]))(input()) else 'Too weak')


import string
s = input()
f1 = f2 = f3 = False
for c in s:
    if c in string.ascii_lowercase:
        f1 = True
    if c in string.ascii_uppercase:
        f2 = True
    if c in string.digits:
        f3 = True
if len(s) >= 5 and f1 and f2 and f3:
    print('Correct')
else:
    print('Too weak')

password=input()
a=b=c=0
if len(password)>4:
    for i in password:
        if a==0 and (ord(i) in range(48,58)): a=1
        if b==0 and (ord(i) in range(65,91)): b=1
        if c==0 and (ord(i) in range(97,123)): c=1
        if a+b+c>2:
            print('Correct')
            return
print ('Too weak')



s = input().strip()
alp = set([chr(i) for i in range(ord('a'), ord('z') + 1)])
upper = set([chr(i) for i in range(ord('A'), ord('Z') + 1)])
num = set([str(i) for i in range(10)])
if len(s) >= 5:
    s = set(list(s))
    if len(s & alp) > 0 and len(s & upper) > 0 and len(s & num) > 0:
        print('Correct')
    else:
        print('Too weak')
else:
    print('Too weak')