import java.util.Scanner;

public class Main {
	private static Scanner sc=new Scanner(System.in);
	public static void main (String[] args){
		while(true){
			int m=sc.nextInt();
			int f=sc.nextInt();
			int r=sc.nextInt();
			if(m==-1&&f==-1&&r==-1) break;
			char result=judge(m,f,r);
			System.out.println(result);
		}
	}
	private static char judge(int m,int f,int r){
		if(m==-1||f==-1) return 'F';
		if(m+f>=80) return 'A';
		else if(m+f>=65) return 'B';
		else if(m+f>=50) return 'C';
		else if(m+f>=30&&r>=50) return 'C';
		else if(m+f>=30) return 'D';
		else return 'F';
	}
}
/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