#include <stdio.h>
int main()
{
char str[100]={'\0'};
while(scanf("%s",&str)!=EOF)
{
int type[4]={0};//各种种类的密码是否出现过
int dif=0;//记录密码中字符的种类
int len=0;//密码串的长度
char substr[3]={'\0'};//记录长度为3的子串
int sub=0;//记录是否有长度超过2的重复子串
int i,j,k=0;
len=strlen(str);
//含有的字符种类判断
for(i=0;i<len;i++)
{
if(str[i]>='A'&&str[i]<='Z')
type[0]=1;
else if(str[i]>='a'&&str[i]<='z')
type[1]=1;
else if(str[i]>='0'&&str[i]<='9')
type[2]=1;
else
type[3]=1;
}
dif=type[0]+type[1]+type[2]+type[3];
//判断是否有重复的子串
for(i=0;i<(len-3);i++)
{
substr[0]=str[i];substr[1]=str[i+1];substr[2]=str[i+2];
for(j=i+3;j<(len-3);j++)
{
if(str[j]==substr[0])
{
if(str[j+1]==substr[1])
{
if(str[j+2]==substr[2])
{
sub=1;
}
}
}
}
}
//总判断是否符合要求
if(sub==0&&dif>=3)
{
if(len>8)
printf("OK\n");
else
printf("NG\n");
}
else
printf("NG\n");
}
return 0;
}