#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Option{
    string s;
    char ch;                                 //使用结构体保存符号和字符串信息
};
bool compare(Option m,Option n){
    return m.s.size()<n.s.size();            //自定义sort中的compare函数
}

int main(){
    int t;
    cin>>t;
    cin.ignore();                            //忽略换行符
    vector<Option> a(4);
    for(int i=0;i<t;i++){
        getline(cin,a[0].s);
        getline(cin,a[1].s);
        getline(cin,a[2].s);
        getline(cin,a[3].s);
        a[0].ch='A';a[1].ch='B';a[2].ch='C';a[3].ch='D';
        sort(a.begin(),a.end(),compare);    //sort函数,注意正确使用数组vector的迭代器a.begin()\a.end()
        if((a[0].s.size()<a[1].s.size())&&(a[2].s.size()==a[3].s.size()))
            cout<<a[0].ch<<endl;
        else if((a[0].s.size()==a[1].s.size())&&(a[2].s.size()<a[3].s.size()))
            cout<<a[3].ch<<endl;
        else cout<<'C'<<endl;
    }
    return 0;
}