#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int alice(char c, int x, int y);
int main(){
  vector<int> q(4);
  while(cin >>q[0]>>q[1]>>q[2]>>q[3],q[0]||q[1]||q[2]||q[3]){
    vector<char> a(3),b(3),c(3);
    a[0] = b[0] = c[0] = '+';
    a[1] = b[1] = c[1] = '-';
    a[2] = b[2] = c[2] = '*';
    sort(a.begin(),a.end());
    sort(b.begin(),b.end());
    sort(c.begin(),c.end());
    sort(q.begin(),q.end());
    do{
      do{
	do{
	  do{
	    if(alice(a[0],q[0],alice(b[0],q[1],alice(c[0],q[2],q[3]))) == 10){
	      cout <<"("<<q[0]<<" "<<a[0]<<" ("<<q[1]<<" "<<b[0]<<" ("<<q[2]<<" "<<c[0]<<" "<<q[3]<<")))"<<endl;
	      goto flag;
	    }
	    if(alice(a[0],q[0],alice(c[0],alice(b[0],q[1],q[2]),q[3])) == 10){
	      cout <<"("<<q[0]<<" "<<a[0]<<" (("<<q[1]<<" "<<b[0]<<" "<<q[2]<<") "<<c[0]<<" "<<q[3]<<"))"<<endl;
	      goto flag;
	    }
	    if(alice(b[0],alice(a[0],q[0],q[1]),alice(c[0],q[2],q[3])) == 10){
	      cout <<"(("<<q[0]<<" "<<a[0]<<" "<<q[1]<<") "<<b[0]<<" ("<<q[2]<<" "<<c[0]<<" "<<q[3]<<"))"<<endl;
	      goto flag;
	    }
	    if(alice(c[0],alice(b[0],alice(a[0],q[0],q[1]),q[2]),q[3]) == 10){
	      cout <<"((("<<q[0]<<" "<<a[0]<<" "<<q[1]<<") "<<b[0]<<" "<<q[2]<<") "<<c[0]<<" "<<q[3]<<")"<<endl;
	      goto flag;
	    }
	    if(alice(a[0],q[0],alice(c[0],alice(b[0],q[1],q[2]),q[3])) == 10){
	      cout <<"("<<q[0]<<" "<<a[0]<<" (("<<q[1]<<" "<<b[0]<<" "<<q[2]<<") "<<c[0]<<" "<<q[3]<<"))"<<endl;
	      goto flag;
	    }
	  }while(next_permutation(q.begin(),q.end()));
	}while(next_permutation(a.begin(),a.end()));
      }while(next_permutation(b.begin(),b.end()));
    }while(next_permutation(c.begin(),c.end()));
    cout <<"0"<<endl;
  flag:;
  }
  return 0;
}
int alice(char c, int x, int y){
  if(c == '+') return x+y;
  if(c == '-') return x-y;
  return x*y;
}