import java.io.*;

class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] a=br.readLine().split(" ");
        int m=Integer.parseInt(a[0]);
        int f=Integer.parseInt(a[1]);
        int r=Integer.parseInt(a[2]);
		int k=m+f;
        while(!(m==-1&&f==-1&&r==-1)){
    		String g=null;
        	if(m==-1||f==-1||k<30){
        		g="F";
        	}else if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	}
            System.out.println(g);
        	a=br.readLine().split(" ");
            m=Integer.parseInt(a[0]);
            f=Integer.parseInt(a[1]);
            r=Integer.parseInt(a[2]);
            k=m+f;
        }
	}
} import java.io.*; io.* java class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] a=br.readLine().split(" ");
        int m=Integer.parseInt(a[0]);
        int f=Integer.parseInt(a[1]);
        int r=Integer.parseInt(a[2]);
		int k=m+f;
        while(!(m==-1&&f==-1&&r==-1)){
    		String g=null;
        	if(m==-1||f==-1||k<30){
        		g="F";
        	}else if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	}
            System.out.println(g);
        	a=br.readLine().split(" ");
            m=Integer.parseInt(a[0]);
            f=Integer.parseInt(a[1]);
            r=Integer.parseInt(a[2]);
            k=m+f;
        }
	}
} Main public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] a=br.readLine().split(" ");
        int m=Integer.parseInt(a[0]);
        int f=Integer.parseInt(a[1]);
        int r=Integer.parseInt(a[2]);
		int k=m+f;
        while(!(m==-1&&f==-1&&r==-1)){
    		String g=null;
        	if(m==-1||f==-1||k<30){
        		g="F";
        	}else if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	}
            System.out.println(g);
        	a=br.readLine().split(" ");
            m=Integer.parseInt(a[0]);
            f=Integer.parseInt(a[1]);
            r=Integer.parseInt(a[2]);
            k=m+f;
        }
	} main {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] a=br.readLine().split(" ");
        int m=Integer.parseInt(a[0]);
        int f=Integer.parseInt(a[1]);
        int r=Integer.parseInt(a[2]);
		int k=m+f;
        while(!(m==-1&&f==-1&&r==-1)){
    		String g=null;
        	if(m==-1||f==-1||k<30){
        		g="F";
        	}else if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	}
            System.out.println(g);
        	a=br.readLine().split(" ");
            m=Integer.parseInt(a[0]);
            f=Integer.parseInt(a[1]);
            r=Integer.parseInt(a[2]);
            k=m+f;
        }
	} BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); br new BufferedReader(new InputStreamReader(System.in)) String[] a=br.readLine().split(" "); a br.readLine().split(" ") br.readLine().split br.readLine() br.readLine br " " int m=Integer.parseInt(a[0]); m Integer.parseInt(a[0]) Integer.parseInt Integer a[0] a 0 int f=Integer.parseInt(a[1]); f Integer.parseInt(a[1]) Integer.parseInt Integer a[1] a 1 int r=Integer.parseInt(a[2]); r Integer.parseInt(a[2]) Integer.parseInt Integer a[2] a 2 int k=m+f; k m+f m f while(!(m==-1&&f==-1&&r==-1)){
    		String g=null;
        	if(m==-1||f==-1||k<30){
        		g="F";
        	}else if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	}
            System.out.println(g);
        	a=br.readLine().split(" ");
            m=Integer.parseInt(a[0]);
            f=Integer.parseInt(a[1]);
            r=Integer.parseInt(a[2]);
            k=m+f;
        } !(m==-1&&f==-1&&r==-1) (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 {
    		String g=null;
        	if(m==-1||f==-1||k<30){
        		g="F";
        	}else if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	}
            System.out.println(g);
        	a=br.readLine().split(" ");
            m=Integer.parseInt(a[0]);
            f=Integer.parseInt(a[1]);
            r=Integer.parseInt(a[2]);
            k=m+f;
        } String g=null; g null if(m==-1||f==-1||k<30){
        		g="F";
        	}else if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	} m==-1||f==-1||k<30 m==-1||f==-1||k<30 m==-1 m -1 1 f==-1 f -1 1 k<30 k 30 {
        		g="F";
        	} g="F" g "F" if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	} 30<=k&&k<50 30<=k 30 k k<50 k 50 {
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	} if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		} r>=50 r 50 {
        			g="C";
        		} g="C" g "C" {
        			g="D";
        		} g="D" g "D" if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	} 50<=k&&k<65 50<=k 50 k k<65 k 65 {
        		g="C";
        	} g="C" g "C" if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	} 65<=k&&k<80 65<=k 65 k k<80 k 80 {
        		g="B";
        	} g="B" g "B" {
        		g="A";
        	} g="A" g "A" System.out.println(g) System.out.println System.out System System.out g a=br.readLine().split(" ") a br.readLine().split(" ") br.readLine().split br.readLine() br.readLine br " " m=Integer.parseInt(a[0]) m Integer.parseInt(a[0]) Integer.parseInt Integer a[0] a 0 f=Integer.parseInt(a[1]) f Integer.parseInt(a[1]) Integer.parseInt Integer a[1] a 1 r=Integer.parseInt(a[2]) r Integer.parseInt(a[2]) Integer.parseInt Integer a[2] a 2 k=m+f k m+f m f String[] args args
import java.io.*;

class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] a=br.readLine().split(" ");
        int m=Integer.parseInt(a[0]);
        int f=Integer.parseInt(a[1]);
        int r=Integer.parseInt(a[2]);
		int k=m+f;
        while(!(m==-1&&f==-1&&r==-1)){
    		String g=null;
        	if(m==-1||f==-1||k<30){
        		g="F";
        	}else if(30<=k&&k<50){
        		if(r>=50){
        			g="C";
        		}else{
        			g="D";
        		}
        	}else if(50<=k&&k<65){
        		g="C";
        	}else if(65<=k&&k<80){
        		g="B";
        	}else{
        		g="A";
        	}
            System.out.println(g);
        	a=br.readLine().split(" ");
            m=Integer.parseInt(a[0]);
            f=Integer.parseInt(a[1]);
            r=Integer.parseInt(a[2]);
            k=m+f;
        }
	}
}