#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<string>
#include<iomanip>
#include<vector>
#include<queue>
#include<stack>
#include<cmath>
using namespace std;
bool flag,used[5];
double a[5];
void dfs(int x){
if(flag)return;
if(x==4){
int oi=0;
for(int i=1;i<=4;i++)if(!used[i])oi=i;
cout<<a[oi]<<endl;
if(fabs(a[oi]-24.0)<0.0001){
flag=1;
}
return;
}
for(int i=1;i<=4;i++){
for(int j=i+1;j<=4;j++){
if(!used[i]&&!used[j]){
used[j]=1;
double n=a[i],m=a[j];
a[i]=n+m;
dfs(x+1);
a[i]=n-m;
dfs(x+1);
a[i]=m-n;
dfs(x+1);
a[i]=m*n;
dfs(x+1);
a[i]=n/m;
dfs(x+1);
a[i]=m/n;
dfs(x+1);
used[j]=0;
}
}
}
}
int main(){
while(1) {
flag = 0;
for (int i = 1; i <= 4; i++) cin >> a[i];
if (a[1] == 0 && a[2] == 0 && a[3] == 0 && a[4] == 0)break;
dfs(1);
if(flag)cout<<"YES";
else cout<<"NO";
cout<<endl;
}
}