let upcase = false;
    let lowcase = false;
    let special = false;
    let isNum = false;
    let count = 0
    if (str.length <= 8) {
      console.log("NG");
      return
    }
    str.split("").forEach((item) => {

      if (item.charCodeAt() >= 65 && item.charCodeAt() <= 90) {
        upcase = true;
      } else if (item.charCodeAt() >= 97 && item.charCodeAt() <= 122) {
        lowcase = true;
      } else if (item.charCodeAt() >= 48 && item.charCodeAt() <= 57) {
        isNum = true
      } else if (item.charCodeAt() != 10 && item.charCodeAt() != 32) {
        special = true
      }
    });
    if(upcase){
      count+=1
    }
    if(lowcase){
      count+=1
    }
    if(isNum){
      count+=1
    }
    if(special){
      count+=1
    }
    if (count>=3) {
      if (repeat(str)) {
        console.log("OK");
        return
      } else {
        console.log("NG");
        return
      }
    } else {
      console.log("NG");
      return
    }
  }
while ((line = readline())) {
  passwordJudge(line);
}
function repeat(str) {
  let step = 3;
  while (step < str.length) {
    let end = str.length - step > 0 ? str.length - step : 0;
    for (let start = 0; start < end; start++) {
      let temp = str.substr(start, step);
      let index = str.indexOf(temp);
      let num = 0;
      while (index != -1) {
        num++;
        index = str.indexOf(temp, index + step);
      }
      if (num > 1) {
        return false;
      }
    }
    step++;
  }
  return true;
}