import java.util.Scanner;
public class Main {
	public static void main(String[] args){
		Scanner scan=new Scanner(System.in);
		int m,f,r,point;
		while(true){
			point=0;
			m=scan.nextInt();
			f=scan.nextInt();
			r=scan.nextInt();
			if(m==-1&&f==-1&&r==-1) break;
			if(m==-1||f==-1){
				System.out.println("F");
			}else{
				point+=(m+f);
				if(80<=point){
					System.out.println("A");
				}else if(65<=point&&point<80){
					System.out.println("B");
				}else if(50<=point&&point<65){
					System.out.println("C");
				}else if(30<=point&&point<50){
					if(50<=r){
						System.out.println("C");
					}else{
						System.out.println("D");
					}
				}else{
					System.out.println("F");
				}
			}
		}
		scan.close();
	}
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz