#include<bits/stdc++.h>
using namespace std;
int a[10],b[10]={0,1,2,3,4},c[10],d[10]={1};
bool f[10]={},g[10]={},l=false;
bool solve(){
int s=0;
for(int i=0;i<=3;i++){
if(d[i]==1)s+=a[c[i+1]];
if(d[i]==2)s-=a[c[i+1]];
if(d[i]==3)s*=a[c[i+1]];
if(d[i]==4){
if(s%a[c[i+1]]!=0){
s=0;break;
}
s/=a[c[i+1]];
}
}
if(s==24){
s=a[c[1]];
for(int i=1;i<=3;i++){
cout<<s;
if(d[i]==1)s+=a[c[i+1]];
if(d[i]==2)s-=a[c[i+1]];
if(d[i]==3)s*=a[c[i+1]];
if(d[i]==4)s/=a[c[i+1]];
if(d[i]==1)cout<<"+";
if(d[i]==2)cout<<"-";
if(d[i]==3)cout<<"*";
if(d[i]==4)cout<<"/";
cout<<a[c[i+1]]<<"="<<s<<endl;
}l=true;
return true;
}
int x=0,y=0;
if(d[1]==1)x=a[c[1]]+a[c[2]];
if(d[1]==2)x=a[c[1]]-a[c[2]];
if(d[1]==3)x=a[c[1]]*a[c[2]];
if(d[1]==4){
if(a[c[1]]%a[c[2]]!=0)return false;
x=a[c[1]]/a[c[2]];
}
if(d[3]==1)y=a[c[3]]+a[c[4]];
if(d[3]==2)y=a[c[3]]-a[c[4]];
if(d[3]==3)y=a[c[3]]*a[c[4]];
if(d[3]==4){
if(a[c[3]]%a[c[4]]!=0)return false;
y=a[c[3]]/a[c[4]];
}
if(d[2]==1)s=x+y;
if(d[2]==2)s=x-y;
if(d[2]==3)s=x*y;
if(d[2]==4){
if(y==0||x%y!=0)return false;
s=x/y;
}
if(s==24){
cout<<a[c[1]];
if(d[1]==1)cout<<"+";
if(d[1]==2)cout<<"-";
if(d[1]==3)cout<<"*";
if(d[1]==4)cout<<"/";
cout<<a[c[2]]<<"="<<x<<endl;
cout<<a[c[3]];
if(d[3]==1)cout<<"+";
if(d[3]==2)cout<<"-";
if(d[3]==3)cout<<"*";
if(d[3]==4)cout<<"/";
cout<<a[c[4]]<<"="<<y<<endl;
cout<<x;
if(d[2]==1)cout<<"+";
if(d[2]==2)cout<<"-";
if(d[2]==3)cout<<"*";
if(d[2]==4)cout<<"/";
cout<<y<<"="<<s<<endl;
l=true;return true;
}
return false;
}
bool dfss(int k){
if(l)return true;
if(k==4){
if(solve())return true;
}
else{
for(int i=1;i<=4;i++){
d[k]=i;
dfss(k+1);
}
}
}
void dfs(int k){
if(l)return;
if(k==5){
if(dfss(1))return;
}
else{
for(int i=1;i<=4;i++){
if(!f[i]){
c[k]=i;
f[i]=true;
dfs(k+1);
f[i]=false;
}
}
}
return;
}
int main(){
scanf("%d%d%d%d",&a[1],&a[2],&a[3],&a[4]);
dfs(1);
if(l){
return 0;
}
else cout<<"No answer!";
return 0;
}```