#include<bits/stdc++.h>
#define loop(i,a,b) for(int i=a;i<b;i++)
#define loopb(i,a,b) for(int i=a;i>=b;i--)
#define loopm(i,a,b,step) for(int i=a;i<b;i+=step)
#define loopbm(i,a,b,step) for(int i=a;i>=b;i-=step)
#define pb(a) push_back(a)
#define mp(a,b) make_pair(a,b)
#define init(arr,val) memset(arr,val,sizeof(arr))
#define INF 1000000007
#define MOD 1000000007
#define BINF 1000000000000000001
#define int long long int
#define double long double
using namespace std;
int solve2(int x,int y,int z,int a,int b,int c)
{
int i,T,A[3],X[3],B[3],sum;
int A1,B1,C1;
int ans1=0,ans2=0,sum1,ans=0;
//scanf("%d %d %d %d %d %d", &X[0], &X[1], &X[2], &A[0], &A[1], &A[2]);
X[0]=x,X[1]=y,X[2]=z;
A[0]=a,A[1]=b,A[2]=c;
// scanf("%d %d %d", &A[0], &A[1], &A[2]);
// X[0]=2, X[1]=4, X[2]=5;
sort(X, X+3);
B[0]=6*A[0],B[1]=3*A[1],B[2]=2*A[2];
sum=(X[0]+X[1]+X[2]);
sum1=sum;
if(B[2]<B[0] && B[2]<B[1])
{
ans+=X[0]*A[2];
sum-=3*X[0];
A1=X[0],B1=X[1],C1=X[2];
X[1]-=X[0],X[2]-=X[0];
// printf("3 : %d\n", ans);
if(B[1]<B[0] && X[1]>0)
{
ans+=X[1]*A[1];
sum-=2*X[1];
X[2]-=X[1];
// printf("2 : %d\n", ans);
if(X[2]>0)
{
ans+=sum*A[0];
sum-=X[2];
X[2]-=X[2];
}
}
else{
if(X[2]>0)
{
ans+=sum*A[0];
sum-=sum;
X[2]-=X[2];
// printf("1 : %d\n", ans);
}
}
if(B[1]<B[0])
{
ans1=0;
if(sum1%2==0){
if(A1+B1>=C1)
{
ans1+=A[1]*(sum1/2);
}
else{
ans1+=A[1]*(A1+B1) + (C1-A1-B1)*A[0];
}
}
else{
if(A1+B1>=C1)
{
ans2=A[1]*(sum1/2) + A[0];
ans1+=A[1]*(sum1/2 -1) + A[2];
ans1=(ans2<ans1) ? ans2 : ans1;
}
else{
ans1+=A[1]*(A1+B1) + (C1-A1-B1)*A[0];
}
}
// printf("ans : %d | ans1 : %d\n", ans, ans1);
ans=(ans<ans1) ? ans : ans1;
}
}
else if(B[1]<B[0])
{
if(sum%2==0){
if(X[0]+X[1]>=X[2])
{
ans+=A[1]*(sum/2);
}
else{
//ans+=A[1]*(sum/2) + (sum-X[0]-X[1])*A[0];
ans+=A[1]*(X[0]+X[1]) + (X[2]-X[0]-X[1])*A[0];
}
}
else{
if(X[0]+X[1]>=X[2])
{
ans+=A[1]*(sum/2) + A[0];
ans1=A[1]*(sum/2 -1) + A[2];
ans=(ans<ans1) ? ans : ans1;
}
else{
//ans+=A[1]*(sum/2) + (sum-X[0]-X[1]+1)*A[0];
ans+=A[1]*(X[0]+X[1]) + (X[2]-X[0]-X[1])*A[0];
}
}
}
else{
ans+=sum*A[0];
}
return ans;
}
int solve1(int X,int Y,int Z,int A,int B,int C)
{
int f,g,h;
int x,y,z,a,b,c;
//cin>>f>>g>>h;
f=X,g=Y,Z=h;
//cin>>a>>b>>c;
a=A,b=B,c=C;
x=min(f,min(g,h));
z=max(f,max(g,h));
y=f+g+h-x-z;
int ans=(x+y+z)*a;
int ans1=BINF,ans2=BINF,ans3=BINF,ans4=BINF;
if(z-(x+y)>=0)
{
ans1=(x+y)*b+(z-x-y)*a;
}
else
{
ans1=((x+y+z)/2)*b;
ans1+=((x+y+z)%2)*a;
}
ans2=x*c+(z+y-x-x)*a;
ans3=x*c+(y-x)*b+(z-y)*a;
int r=z-y;
loop(i,r,min(r+1,x+1))
{
int ans5=(x-i)*c;
int x2=i,y2=(y-x+i),z2=(z-x+i);
if(z2-(x2+y2)>=0)
{
ans5+=(x2+y2)*b+(z2-x2-y2)*a;
}
else
{
ans5+=((x2+y2+z2)/2)*b;
ans5+=((x2+y2+z2)%2)*a;
}
ans3=min(ans3,ans5);
}
loop(i,0,min((int)2,x+1))
{
int ans5=(i)*c;
int x2=x-i,y2=(y-i),z2=(z-i);
if(z2-(x2+y2)>=0)
{
ans5+=(x2+y2)*b+(z2-x2-y2)*a;
}
else
{
ans5+=((x2+y2+z2)/2)*b;
ans5+=((x2+y2+z2)%2)*a;
}
ans4=min(ans4,ans5);
}
ans=min(ans,min(ans1,min(ans2,min(ans3,ans4))));
return ans;
}
#undef int
int main()
{
#define int long long int
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
srand(time(NULL));
loop(i,0,10)
{
int x,y,z,a,b,c;
x=rand()%10000;
y=rand()%10000;
z=rand()%10000;
a=rand()%1000;
b=rand()%1000;
c=rand()%1000;
int ans1=solve1(x,y,z,a,b,c);
int ans2=solve2(x,y,z,a,b,c);
if(ans1!=ans2)
{
cout<<x<<" "<<y<<" "<<z<<" "<<a<<" "<<b<<" "<<c<<endl;
cout<<"expected: "<<ans1<<" "<<"got: "<<ans2<<endl;
}
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBsb29wKGksYSxiKSBmb3IoaW50IGk9YTtpPGI7aSsrKQojZGVmaW5lIGxvb3BiKGksYSxiKSBmb3IoaW50IGk9YTtpPj1iO2ktLSkKI2RlZmluZSBsb29wbShpLGEsYixzdGVwKSBmb3IoaW50IGk9YTtpPGI7aSs9c3RlcCkKI2RlZmluZSBsb29wYm0oaSxhLGIsc3RlcCkgZm9yKGludCBpPWE7aT49YjtpLT1zdGVwKQojZGVmaW5lIHBiKGEpIHB1c2hfYmFjayhhKQojZGVmaW5lIG1wKGEsYikgbWFrZV9wYWlyKGEsYikKI2RlZmluZSBpbml0KGFycix2YWwpIG1lbXNldChhcnIsdmFsLHNpemVvZihhcnIpKQojZGVmaW5lIElORiAxMDAwMDAwMDA3CiNkZWZpbmUgTU9EIDEwMDAwMDAwMDcKI2RlZmluZSBCSU5GIDEwMDAwMDAwMDAwMDAwMDAwMDEKI2RlZmluZSBpbnQgbG9uZyBsb25nIGludAojZGVmaW5lIGRvdWJsZSBsb25nIGRvdWJsZQoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IHNvbHZlMihpbnQgeCxpbnQgeSxpbnQgeixpbnQgYSxpbnQgYixpbnQgYykKewoJaW50IGksVCxBWzNdLFhbM10sQlszXSxzdW07CglpbnQgQTEsQjEsQzE7CgoKCWludCBhbnMxPTAsYW5zMj0wLHN1bTEsYW5zPTA7CgkJLy9zY2FuZigiJWQgJWQgJWQgJWQgJWQgJWQiLCAmWFswXSwgJlhbMV0sICZYWzJdLCAmQVswXSwgJkFbMV0sICZBWzJdKTsKCQlYWzBdPXgsWFsxXT15LFhbMl09ejsKCQlBWzBdPWEsQVsxXT1iLEFbMl09YzsKLy8JCXNjYW5mKCIlZCAlZCAlZCIsICZBWzBdLCAmQVsxXSwgJkFbMl0pOwovLwkJWFswXT0yLCBYWzFdPTQsIFhbMl09NTsKCQlzb3J0KFgsIFgrMyk7CgkJQlswXT02KkFbMF0sQlsxXT0zKkFbMV0sQlsyXT0yKkFbMl07CgkJc3VtPShYWzBdK1hbMV0rWFsyXSk7CgkJc3VtMT1zdW07CgkJaWYoQlsyXTxCWzBdICYmIEJbMl08QlsxXSkKCQl7CgkJCWFucys9WFswXSpBWzJdOwoJCQlzdW0tPTMqWFswXTsKCQkJQTE9WFswXSxCMT1YWzFdLEMxPVhbMl07CgkJCVhbMV0tPVhbMF0sWFsyXS09WFswXTsKLy8JCQlwcmludGYoIjMgOiAlZFxuIiwgYW5zKTsKCQkJaWYoQlsxXTxCWzBdICYmIFhbMV0+MCkKCQkJewoJCQkJYW5zKz1YWzFdKkFbMV07CgkJCQlzdW0tPTIqWFsxXTsKCQkJCVhbMl0tPVhbMV07Ci8vCQkJCXByaW50ZigiMiA6ICVkXG4iLCBhbnMpOwoJCQkJaWYoWFsyXT4wKQoJCQkJewoJCQkJCWFucys9c3VtKkFbMF07CgkJCQkJc3VtLT1YWzJdOwoJCQkJCVhbMl0tPVhbMl07CgkJCQl9CgkJCX0KCQkJZWxzZXsKCQkJCWlmKFhbMl0+MCkKCQkJCXsKCQkJCQlhbnMrPXN1bSpBWzBdOwoJCQkJCXN1bS09c3VtOwoJCQkJCVhbMl0tPVhbMl07Ci8vCQkJCQlwcmludGYoIjEgOiAlZFxuIiwgYW5zKTsKCQkJCX0KCQkJfQoJCQlpZihCWzFdPEJbMF0pCgkJCXsKCQkJCWFuczE9MDsKCQkJCWlmKHN1bTElMj09MCl7CgkJCQkJaWYoQTErQjE+PUMxKQoJCQkJCXsKCQkJCQkJYW5zMSs9QVsxXSooc3VtMS8yKTsKCQkJCQl9CgkJCQkJZWxzZXsKCQkJCQkJYW5zMSs9QVsxXSooQTErQjEpICsgKEMxLUExLUIxKSpBWzBdOwoJCQkJCX0KCQkJCX0KCQkJCWVsc2V7CgkJCQkJaWYoQTErQjE+PUMxKQoJCQkJCXsKCQkJCQkJYW5zMj1BWzFdKihzdW0xLzIpICsgQVswXTsKCQkJCQkJYW5zMSs9QVsxXSooc3VtMS8yIC0xKSArIEFbMl07CgkJCQkJCWFuczE9KGFuczI8YW5zMSkgPyBhbnMyIDogYW5zMTsKCQkJCQl9CgkJCQkJZWxzZXsKCQkJCQkJYW5zMSs9QVsxXSooQTErQjEpICsgKEMxLUExLUIxKSpBWzBdOwoJCQkJCX0KCQkJCX0KLy8JCQkJcHJpbnRmKCJhbnMgOiAlZCB8IGFuczEgOiAlZFxuIiwgYW5zLCBhbnMxKTsKCQkJCWFucz0oYW5zPGFuczEpID8gYW5zIDogYW5zMTsKCQkJfQoJCX0KCQllbHNlIGlmKEJbMV08QlswXSkKCQl7CgkJCWlmKHN1bSUyPT0wKXsKCQkJCWlmKFhbMF0rWFsxXT49WFsyXSkKCQkJCXsKCQkJCQlhbnMrPUFbMV0qKHN1bS8yKTsKCQkJCX0KCQkJCWVsc2V7CgkJCQkJLy9hbnMrPUFbMV0qKHN1bS8yKSArIChzdW0tWFswXS1YWzFdKSpBWzBdOwoJCQkJCWFucys9QVsxXSooWFswXStYWzFdKSArIChYWzJdLVhbMF0tWFsxXSkqQVswXTsKCQkJCX0KCQkJfQoJCQllbHNlewoJCQkJaWYoWFswXStYWzFdPj1YWzJdKQoJCQkJewoJCQkJCWFucys9QVsxXSooc3VtLzIpICsgQVswXTsKCQkJCQlhbnMxPUFbMV0qKHN1bS8yIC0xKSArIEFbMl07CgkJCQkJYW5zPShhbnM8YW5zMSkgPyBhbnMgOiBhbnMxOwoJCQkJfQoJCQkJZWxzZXsKCQkJCQkvL2Fucys9QVsxXSooc3VtLzIpICsgKHN1bS1YWzBdLVhbMV0rMSkqQVswXTsKCQkJCQlhbnMrPUFbMV0qKFhbMF0rWFsxXSkgKyAoWFsyXS1YWzBdLVhbMV0pKkFbMF07CgkJCQl9CgkJCX0KCQl9CgkJZWxzZXsKCQkJYW5zKz1zdW0qQVswXTsKCQl9CgkJcmV0dXJuIGFuczsKCQp9CgppbnQgc29sdmUxKGludCBYLGludCBZLGludCBaLGludCBBLGludCBCLGludCBDKQp7CglpbnQgZixnLGg7CglpbnQgeCx5LHosYSxiLGM7CgkvL2Npbj4+Zj4+Zz4+aDsKCWY9WCxnPVksWj1oOwoJLy9jaW4+PmE+PmI+PmM7CglhPUEsYj1CLGM9QzsKCXg9bWluKGYsbWluKGcsaCkpOwoJej1tYXgoZixtYXgoZyxoKSk7Cgl5PWYrZytoLXgtejsKCQoJCglpbnQgYW5zPSh4K3kreikqYTsKCWludCBhbnMxPUJJTkYsYW5zMj1CSU5GLGFuczM9QklORixhbnM0PUJJTkY7CglpZih6LSh4K3kpPj0wKQoJewoJCSBhbnMxPSh4K3kpKmIrKHoteC15KSphOwoJCQoJfQoJZWxzZQoJICB7CgkgIAkgYW5zMT0oKHgreSt6KS8yKSpiOwoJICAJIGFuczErPSgoeCt5K3opJTIpKmE7CgkgIH0KCSAKCSBhbnMyPXgqYysoeit5LXgteCkqYTsKICAgICBhbnMzPXgqYysoeS14KSpiKyh6LXkpKmE7CiAgICAgaW50IHI9ei15OwoJIAoJIGxvb3AoaSxyLG1pbihyKzEseCsxKSkKCSB7CgkgICBpbnQgYW5zNT0oeC1pKSpjOwoJICAgaW50IHgyPWkseTI9KHkteCtpKSx6Mj0oei14K2kpOwogCgkgICAgaWYoejItKHgyK3kyKT49MCkKCXsKCQkgYW5zNSs9KHgyK3kyKSpiKyh6Mi14Mi15MikqYTsKCQkKCX0KCWVsc2UKCSAgewoJICAJIGFuczUrPSgoeDIreTIrejIpLzIpKmI7CgkgIAkgYW5zNSs9KCh4Mit5Mit6MiklMikqYTsKCSAgfQoJICAKCSAgYW5zMz1taW4oYW5zMyxhbnM1KTsKCSAKCSAgIAoJIH0KCSAKCWxvb3AoaSwwLG1pbigoaW50KTIseCsxKSkKCSB7CgkgICBpbnQgYW5zNT0oaSkqYzsKCSAgIGludCB4Mj14LWkseTI9KHktaSksejI9KHotaSk7CiAKCSAgICBpZih6Mi0oeDIreTIpPj0wKQoJewoJCSBhbnM1Kz0oeDIreTIpKmIrKHoyLXgyLXkyKSphOwoJCQoJfQoJZWxzZQoJICB7CgkgIAkgYW5zNSs9KCh4Mit5Mit6MikvMikqYjsKCSAgCSBhbnM1Kz0oKHgyK3kyK3oyKSUyKSphOwoJICB9CgkgIAoJICBhbnM0PW1pbihhbnM0LGFuczUpOwoJIAoJICAgCgkgfQoJIAoJIAoJIAoJIAoJIGFucz1taW4oYW5zLG1pbihhbnMxLG1pbihhbnMyLG1pbihhbnMzLGFuczQpKSkpOwoJIHJldHVybiBhbnM7Cn0KCiN1bmRlZiBpbnQKaW50IG1haW4oKQp7CiNkZWZpbmUgaW50IGxvbmcgbG9uZyBpbnQKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShOVUxMKTsKICAgIGNvdXQudGllKE5VTEwpOwogICAgc3JhbmQodGltZShOVUxMKSk7CiAgICBsb29wKGksMCwxMCkKICAgIHsKICAgIAlpbnQgeCx5LHosYSxiLGM7CiAgICAJeD1yYW5kKCklMTAwMDA7CiAgICAJeT1yYW5kKCklMTAwMDA7CiAgICAJej1yYW5kKCklMTAwMDA7CiAgICAJYT1yYW5kKCklMTAwMDsKICAgIAliPXJhbmQoKSUxMDAwOwogICAgCWM9cmFuZCgpJTEwMDA7CiAgICAJaW50IGFuczE9c29sdmUxKHgseSx6LGEsYixjKTsKICAgIAlpbnQgYW5zMj1zb2x2ZTIoeCx5LHosYSxiLGMpOwogICAgCWlmKGFuczEhPWFuczIpCiAgICAJewogICAgCQljb3V0PDx4PDwiICI8PHk8PCIgIjw8ejw8IiAiPDxhPDwiICI8PGI8PCIgIjw8Yzw8ZW5kbDsKICAgIAkJY291dDw8ImV4cGVjdGVkOiAiPDxhbnMxPDwiICAiPDwiZ290OiAiPDxhbnMyPDxlbmRsOwogICAgCX0KICAgIH0KICAgIAogICAgcmV0dXJuIDA7Cn0=