#include <iostream>
#include <algorithm>
#include <cstdio>

using namespace std;

//c -> 1,+ 2,-, 3,*
int calc(int a,int b,int c){
	switch(c){
		case 1:return a+b;
		case 2:return a-b;
		case 3:return a*b;
	}
	return 0;
}
char n2c(int n){
	switch(n){
		case 1: return '+';
		case 2: return '-';
		case 3: return '*';
	}
}

bool comb(int a[], int n){
	if(n == 3){
		for(int i = 1; i <= 3; i++){
			for(int j = 1; j <= 3; j++){
				for(int k = 1; k <= 3; k++){
					if(calc(calc(a[0],a[1],i),calc(a[2],a[3],j),k) == 10){
						cout<<'('<<a[0]<<n2c(i)<<a[1]<<')'<<n2c(k)<<'('<<a[2]<<n2c(j)<<a[3]<<')'<<endl;
						return true;
					}
					if(calc(a[0],calc(a[1],calc(a[2],a[3],i),j),k) == 10){
						cout<<a[0]<<n2c(k)<<'('<<a[1]<<n2c(j)<<'('<<a[2]<<n2c(i)<<a[3]<<"))"<<endl;
						return true;
					}
					if(calc(calc(calc(a[0],a[1],i),a[2],j),a[3],k)== 10){
						cout<<"(("<<a[0]<<n2c(i)<<a[1]<<')'<<n2c(j)<<a[2]<<')'<<n2c(k)<<a[3]<<endl;
						return true;
					}
				}
			}
		}
		return false;
	}else{
		for(int i = n; i < 4; i++){
			swap(a[i],a[n]);
			if(comb(a,n+1)) return true;
			swap(a[i],a[n]);
		}
	}
	return false;
}

int main(){
	int a[4];
	for(int i = 0; i < 4; i++){
		cin >> a[i];
	}
	while(a[0]){
		if(!comb(a,0)) cout << 0 << endl;
		for(int i = 0; i < 4; i++){
			cin >> a[i];
		}
	}
}