#include <bits/stdc++.h>
using namespace std;
double num = 1e-6;
int ANS = 24;
int ADD = 0, SUB = 1, MUL = 2, DIV = 3;
bool process(vector<double>& l){
if(l.size() == 0) return false;
if(l.size() == 1) return abs(24 - l[0]) < num; //只剩一个数字
int size = l.size(); //
for(int i = 0; i < size; i++){
for(int j = 0; j < size; j++){
if(i != j){ //两个索引不能相等
vector<double> l2;
for(int k = 0; k < size; k++){
if(k != i && k != j){
l2.push_back(l[k]);//先将本轮不做处理的数字放进去
}
}
//"二合一"
for(int m = 0; m < 4; m++){ //四种处理:加减乘除
if(m == ADD){
l2.push_back(l[i] + l[j]);
}
else if(m == SUB){
l2.push_back(l[i] - l[j]);
}
else if(m == MUL){
l2.push_back(l[i] * l[j]);
}
else{
if(abs(l[j]) < num) continue; //除的时候分母不能为0
l2.push_back(l[i] / l[j]);
}
if(process(l2)){
return true; //
}
l2.pop_back(); //
}
}
}
}
return false;
}
int main(){
int a = 0, b = 0, c = 0, d = 0;
while(cin >> a >> b >> c >> d){
//二合一 + dfs
vector<double> l1;
l1.push_back((double)a);
l1.push_back((double)b);
l1.push_back((double)c);
l1.push_back((double)d);
bool res = process(l1);
if(res)
cout << "true" << endl;
else
cout << "false" << endl;
}
return 0;
}