#include <bits/stdc++.h>
using namespace std;
//包括大小写字母.数字.其它符号,以上四种至少三种
bool checkChar(string str){
int i = 0, j = 0, k = 0, l = 0;
for(char c : str){
if(isupper(c)){
i = 1;
}
else if(islower(c)){
j = 1;
}
else if(isdigit(c)){
k = 1;
}
else{
l = 1;
}
}
if(i + j + k + l >= 3){
return true;
}
return false;
}
//不能有长度大于2的包含公共元素的子串重复
bool check(string str){
for(int i = 0; i < str.size() - 3; i++){
string s = str.substr(i, 3);
if(str.find(s, i + 3) != str.npos){ //从第i + 3位开始找s
return false;
}
}
return true;
}
int main(){
string str = "";
while(cin >> str){
if(str.size() > 8 && checkChar(str) && check(str)){
cout << "OK"<<endl;
}
else{
cout << "NG"<<endl;
}
}
return 0;
}