import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int m,f,r;
		int x[][] = new int[51][3];
		int i = 0;
		while(true){
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		}
		stdIn.close();
		for(int j=0;j<i; j++) {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		}
	}
}
 import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int m,f,r;
		int x[][] = new int[51][3];
		int i = 0;
		while(true){
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		}
		stdIn.close();
		for(int j=0;j<i; j++) {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		}
	}
} Main public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int m,f,r;
		int x[][] = new int[51][3];
		int i = 0;
		while(true){
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		}
		stdIn.close();
		for(int j=0;j<i; j++) {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		}
	} main {
		Scanner stdIn = new Scanner(System.in);
		int m,f,r;
		int x[][] = new int[51][3];
		int i = 0;
		while(true){
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		}
		stdIn.close();
		for(int j=0;j<i; j++) {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		}
	} Scanner stdIn = new Scanner(System.in); stdIn new Scanner(System.in) int m m f f r; r int x[][] = new int[51][3]; x new int[51][3] 51 3 int i = 0; i 0 while(true){
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		} true {
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		} m = stdIn.nextInt() m stdIn.nextInt() stdIn.nextInt stdIn f = stdIn.nextInt() f stdIn.nextInt() stdIn.nextInt stdIn r = stdIn.nextInt() r stdIn.nextInt() stdIn.nextInt stdIn if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			} (m==-1)&&(f==-1)&&(r==-1) (m==-1)&&(f==-1)&&(r==-1) (m==-1) m -1 1 (f==-1) f -1 1 (r==-1) r -1 1 {
				break;
			} break; {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			} x[i][0] = m x[i][0] x[i] x i 0 m x[i][1] = f x[i][1] x[i] x i 1 f x[i][2] = r x[i][2] x[i] x i 2 r i++ i stdIn.close() stdIn.close stdIn for(int j=0;j<i; j++) {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		} int j=0; int j=0; j 0 j<i j i j++ j++ j {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		} {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		} if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			} x[j][0]==-1 ||x[j][1]==-1 x[j][0]==-1 x[j][0] x[j] x j 0 -1 1 x[j][1]==-1 x[j][1] x[j] x j 1 -1 1 {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} System.out.println("F") System.out.println System.out System System.out "F" if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			} (x[j][0] + x[j][1]) >=80 (x[j][0] + x[j][1]) x[j][0] x[j] x j 0 x[j][1] x[j] x j 1 80 {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} System.out.println("A") System.out.println System.out System System.out "A" if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			} (x[j][0] + x[j][1]) >=65 (x[j][0] + x[j][1]) x[j][0] x[j] x j 0 x[j][1] x[j] x j 1 65 {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} System.out.println("B") System.out.println System.out System System.out "B" if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			} (x[j][0] + x[j][1]) >=50 (x[j][0] + x[j][1]) x[j][0] x[j] x j 0 x[j][1] x[j] x j 1 50 {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} System.out.println("C") System.out.println System.out System System.out "C" if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			} (x[j][2]) >=50 (x[j][2]) x[j] x j 2 50 {
				System.out.println("C");
			} System.out.println("C") System.out.println System.out System System.out "C" if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			} (x[j][0] + x[j][1]) >=30 (x[j][0] + x[j][1]) x[j][0] x[j] x j 0 x[j][1] x[j] x j 1 30 {
				System.out.println("D");
			} System.out.println("D") System.out.println System.out System System.out "D" {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			} System.out.println("F") System.out.println System.out System System.out "F" String[] args args public class Main {
	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int m,f,r;
		int x[][] = new int[51][3];
		int i = 0;
		while(true){
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		}
		stdIn.close();
		for(int j=0;j<i; j++) {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		}
	}
} public class Main {
	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int m,f,r;
		int x[][] = new int[51][3];
		int i = 0;
		while(true){
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		}
		stdIn.close();
		for(int j=0;j<i; j++) {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		}
	}
} Main
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int m,f,r;
		int x[][] = new int[51][3];
		int i = 0;
		while(true){
			m = stdIn.nextInt();
			f = stdIn.nextInt();
			r = stdIn.nextInt();
			if ((m==-1)&&(f==-1)&&(r==-1)) {
				break;
			} else {
				x[i][0] = m;
				x[i][1] = f;
				x[i][2] = r;
				i++;
			}
		}
		stdIn.close();
		for(int j=0;j<i; j++) {
			//中間試験、期末試験のいずれかを欠席した場合成績は F。
			if(x[j][0]==-1 ||x[j][1]==-1) {
				System.out.println("F");
			//中間試験と期末試験の合計点数が 80 以上ならば成績は A 。
			} else if((x[j][0] + x[j][1]) >=80) {
				System.out.println("A");
			//中間試験と期末試験の合計点数が 65 以上 80 未満ならば成績は B。
			} else if((x[j][0] + x[j][1]) >=65) {
				System.out.println("B");
			//中間試験と期末試験の合計点数が 50 以上 65 未満ならば成績は C。
			} else if((x[j][0] + x[j][1]) >=50) {
				System.out.println("C");
			//中間試験と期末試験の合計点数が 30 以上 50 未満ならば成績は D。 ただし、再試験の点数が 50 以上ならば成績は C。
			} else if((x[j][2]) >=50) {
				System.out.println("C");
			} else if((x[j][0] + x[j][1]) >=30) {
				System.out.println("D");
			} else {
			//中間試験と期末試験の合計点数が 30 未満ならば成績は F。
				System.out.println("F");
			}
		}
	}
}

