//Author:	Nathaniel Boisgard, 0025323
//Date:		11-11-2002


import java.io.*;
import java.util.*;
import eprog.*;

public class Satz {

	public static final String buchstabenKlein="abcdefghijklmnopqrstuvwxyz";
	public static final String buchstabenGross="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	public static final String sonderzeichen="();.,";
	public static final char hochkomma='"';
	public static int semikolonAnz=0;
	public static int counter=0;
	public static int tokenAnz=0;
	public static int klammernOffen=0;
	public static int hochkommaOffen=0;

	public Satz() {


	}

	public static void main(String[] args) {

		Satz spawn = new Satz();
		String str = spawn.einlesen();
		StringTokenizer st1;
		String token;
		boolean valid = false;
		if(str!=null) {
			st1=new StringTokenizer(str);
			tokenAnz=st1.countTokens();
			while(st1.hasMoreTokens()) {
				token=st1.nextToken();
				spawn.countSemikolon(token);
				spawn.countKlammern(token);
				counter++;
				if((spawn.zeichenTest(token))&&(spawn.wortTest(token))&&(semikolonAnz<2)) {
					valid=true;
				}
				else {
					valid=false;
					break;
				}
			}
		}
		if((valid)&&(klammernOffen==0)&&(hochkommaOffen%2==0)&&(tokenAnz<6)) {
			EprogIO.println("J");
		}
		else {
			EprogIO.println("FALSCHE EINGABE");
		}
	}

	public String einlesen() {

		String str;
		BufferedReader in;
		try {
			in=new BufferedReader(new InputStreamReader(System.in));;
			str=in.readLine();
		}
		catch(IOException e) {
			str=null;
		}
		return(str);
	}

	public boolean isElement(char c, String in) {

		boolean valid=false;
		int i;
		for(i=0;i<in.length();i++) {
			if(c==in.charAt(i)) {
				valid=true;
				break;
			}
		}
		return(valid);
	}

	public boolean zeichenTest(String in) {

		Satz spawn = new Satz();
		boolean valid=false;
		int i;
		for(i=0;i<in.length();i++) {
			if((spawn.isElement(in.charAt(i),buchstabenGross+buchstabenKlein+sonderzeichen))||(in.charAt(i)==hochkomma)){
				valid=true;
			}
			else {
				valid=false;
				break;
			}
		}
		return(valid);
	}

	public boolean wortTest(String in) {

		Satz spawn = new Satz();
		boolean valid1 = false;
		boolean valid2 = false;
		boolean valid3 = false;
		boolean valid4 = false;
		boolean valid5 = false;
		boolean valid6 = false;
		boolean valid7 = false;
		boolean valid8 = false;
		int i;
		int j=0;
		int b=0;
		try {
		for(i=0;i<in.length();i++) {
			if((in.charAt(i)=='(')||(in.charAt(i)=='"')) {
				j++;
			}
			else {
				break;
			}
		}
		if(j!=0) {
			in = in.substring(j,in.length());
		}
		for(i=0;i<in.length()-2;i++) {
			if((in.charAt(i)==in.charAt(i+1))&&(in.charAt(i)==in.charAt(i+2))) {
				valid1=false;
				break;
			}
			else {
				valid1=true;
			}
		}
		for(i=1;i<in.length();i++) {
			if(spawn.isElement(in.charAt(i),buchstabenGross)) {
				valid2=false;
				break;
			}
			else {
				valid2=true;
			}
		}
		for(i=0;i<in.length()-1;i++) {
			if((in.charAt(i)==',')||(in.charAt(i)==';')||(in.charAt(i)=='.')) {
				valid3=false;
				break;
			}
			else {
				valid3=true;
			}
		}
		for(i=0;i<in.length()-1;i++) {
			if(in.charAt(i)=='(') {
				valid4=false;
				break;
			}
			else {
				valid4=true;
			}
			if((in.charAt(i)=='"')||(in.charAt(i)==')')) {
				if(spawn.isElement(in.charAt(i+1),buchstabenKlein+buchstabenGross)) {
					valid5=false;
					break;
				}
				else {
					valid5=true;
				}
			}
			else {
				valid5=true;
			}
		}
		if(counter==1) {
			if(spawn.isElement(in.charAt(0),buchstabenGross)) {
				valid6=true;
			}
			else {
				valid6=false;
			}
		}
		else {
			valid6=true;
		}
		if(counter==tokenAnz) {
			if(in.charAt(in.length()-1)=='.') {
				valid7=true;
			}
			else {
				valid7=false;
			}
		}
		else {
			valid7=true;
		}
		for(i=0;i<in.length();i++) {
			if(spawn.isElement(in.charAt(i),buchstabenGross+buchstabenKlein)) {
				b++;
			}
		}
		if(b<13) {
			valid8=true;
		}
		else {
			valid8=false;
		}
		if((valid1)&&(valid2)&&(valid3)&&(valid4)&&(valid5)&&(valid6)&&(valid7)&&(valid8)) {
			return(true);
		}
		else {
			return(false);
		}
		}
		catch(StringIndexOutOfBoundsException e) {
			return(false);
		}
	}

	public void countSemikolon(String in) {

		int i;
		for(i=0;i<in.length();i++) {
			if(in.charAt(i)==';') {
				semikolonAnz++;
			}
		}
	}

	public void countKlammern(String in) {

		int i;
		for(i=0;i<in.length();i++) {
			if(in.charAt(i)=='(') {
				klammernOffen++;
			}
			if(in.charAt(i)==')') {
				klammernOffen--;
			}
		}
	}

	public void countHochkomma(String in) {

		int i;
		for(i=0;i<in.length();i++) {
			if(in.charAt(i)=='"') {
				hochkommaOffen++;
			}
		}
	}
}