#include <iostream>
#include <algorithm>

using namespace std;

int num[4];
const char op[3] = {'+', '-', '*'};
const string cat[5] = {"(a x (b x (c x d)))",
                       "(a x ((b x c) x d))",
                       "((a x b) x (c x d))",
                       "((a x (b x c)) x d)",
                       "(((a x b) x c) x d)"};

int cal(int a, int b, int op) 
{
    if (op == 0)
        return a + b;
    else if (op == 1)
        return a - b;
    else if (op == 2)
        return a * b;
}


int solve(int i, int j, int k, int l)
{
    if (l == 0) 
        return cal(num[0], cal(num[1], cal(num[2], num[3], k), j), i);
    else if (l == 1) 
        return cal(num[0], cal(cal(num[1], num[2], j), num[3], k), i);
    else if (l == 2) 
        return cal(cal(num[0], num[1], i), cal(num[2], num[3], k), j);
    else if (l == 3) 
        return cal(cal(num[0], cal(num[1], num[2], j), i), num[3], k);
    else if (l == 4) 
        return cal(cal(cal(num[0], num[1], i), num[2], j), num[3], k);
}

void print_ans(int i, int j, int k, int l)
{
    int op_cnt = 0;
    int num_cnt = 0;

    for (int n = 0; n < cat[l].size(); n++) {
        if (cat[l][n] == 'x') {
            switch (op_cnt) {
            case 0:
                cout << op[i];
                op_cnt++;
                break;
            case 1:
                cout << op[j];
                op_cnt++;
                break;
            case 2:
                cout << op[k];
                break;
            }
        }
        else if (cat[l][n] >= 'a' && cat[l][n] <= 'd')
            cout << num[num_cnt++];
        else
            cout << cat[l][n];
    }
    cout << endl;
}


int main()
{
    while (cin >> num[0] >> num[1] >> num[2] >> num[3]) {
        if (!num[0] && !num[1] && !num[2] && !num[3])
            break;
        bool flag = false;

        sort(num, num + 4);
        do {
            for (int i = 0; i < 3; i++) 
                for (int j = 0; j < 3; j++) 
                    for (int k = 0; k < 3; k++) 
                        for (int l = 0; l < 5; l++) 
                            if (solve(i, j, k, l) == 10) {
                                print_ans(i, j, k, l);
                                flag = true;
                                goto result;
                            }
        } while (next_permutation(num, num + 4));
    result:
        if (!flag)
            cout << 0 << endl;
    }

    return 0;
}