#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
using namespace std;


bool DFS(const vector<double>& nums) {
    if (nums.size() == 1) {
        if (abs(nums[0]-24) <= 0.00000001) {
            return true;
        } else {
            return false;
        }
    }

    for (int i = 0; i < nums.size(); i++) {
        vector<double> tmpVec1 = nums;
        double temp1 = nums[i];
        auto it1 = find(tmpVec1.begin(), tmpVec1.end(), temp1);
        tmpVec1.erase(it1);
        for (int j = i + 1; j < nums.size(); j++) {
            vector<double> tmpVec2 = tmpVec1;
            double temp2 = nums[j];
            auto it2 = find(tmpVec2.begin(), tmpVec2.end(), temp2);
            tmpVec2.erase(it2);
            vector<double> res;
            res.push_back(temp1 * temp2);
            if (temp1 != 0) {
                res.push_back(temp2 / temp1);
            }
            res.push_back(temp1 + temp2);
            res.push_back(temp1 - temp2);
            res.push_back(temp2 - temp1);
            if (temp2 != 0)
                res.push_back(temp1 / temp2);
            for (int z = 0; z < res.size(); z++) {
                tmpVec2.push_back(res[z]);
                if (DFS(tmpVec2)) return true;
                tmpVec2.erase(find(tmpVec2.begin(), tmpVec2.end(), res[z]));
            }
        }
    }
    return false;
}
int main() {
    double n1, n2, n3, n4;
    cin >> n1 >> n2 >> n3 >> n4;
    vector<double> nums = {n1, n2, n3, n4};
    bool flag = DFS(nums);
    if (flag)
        cout << "true";
    else cout << "false";
}
// 64 位输出请用 printf("%lld")