#include <iostream>
#include <vector>
#include <string>
#include <sstream>
#include <set>
#include <algorithm>
using namespace std;
// 輔助函式:將字串轉換為整數集合
set<int> stringToSet(string s) {
stringstream ss(s);
int num;
set<int> res;
while (ss >> num) {
res.insert(num);
}
return res;
}
int main() {
string line1, line2;
// 每次讀取兩行,分別代表集合 A 與 B
while (getline(cin, line1) && getline(cin, line2)) {
set<int> A = stringToSet(line1);
set<int> B = stringToSet(line2);
// 計算交集數量
int intersectCount = 0;
for (int x : A) {
if (B.count(x)) {
intersectCount++;
}
}
int sizeA = A.size();
int sizeB = B.size();
// 判斷邏輯
if (sizeA == sizeB && intersectCount == sizeA) {
cout << "A equals B" << endl;
} else if (intersectCount == sizeA && sizeA < sizeB) {
cout << "A is a proper subset of B" << endl;
} else if (intersectCount == sizeB && sizeB < sizeA) {
cout << "B is a proper subset of A" << endl;
} else if (intersectCount == 0) {
cout << "A and B are disjoint" << endl;
} else {
cout << "I'm confused!" << endl;
}
}
return 0;
}