#include<bits/stdc++.h>
using namespace std;
//本题主要考察了对结构体数据的访问,以及利用这些数据进行运算和判断

// 定义学生结构体
struct Student{
    int id;
    int academic_score;
    int activity_score;
};

// 评估函数:判断学生是否优秀
bool isExcellent(Student student){
    // TODO: 实现优秀标准的判断逻辑
    if(student.academic_score+student.activity_score<=140)
    return false;//题中已经给了结构体数据,不许要考虑输入和输出,只要知道怎么用数据就好
  
    if(student.academic_score*7+student.activity_score*3<800)
    return false;
  //以上是两种假情况
    return true; //true 代表学生优秀
}
//以下是主函数可能的结构,不需要自己写,但可以参考一下
// int main()
// {

//     Student a[2003];
//     int n{};
//     cin>>n;
//     for(int i=0;i<n;i++){
//     cin>>a[i].id>>a[i].academic_score>>a[i].activity_score;
//     if(isExcellent(a[i]))
//     cout<<"Excellent"<<endl;
//     else
//     cout<<"Not excellent"<<endl;
    
//     }

// }
































































































































































































//主函数用于读入数据调用函数,请勿修改
int main(){
    int n;
    cin >> n;
    Student student;
    for(int i=1;i<=n;i++){
        cin >> student.id >> student.academic_score >> student.activity_score;
        if (isExcellent(student)) cout << "Excellent\n";
        else cout << "Not excellent\n";
    }
    return 0;
}