#include <stdio.h>
int main(int argc, char* argv[])
{
int n,max,tmp,i,j;
int x[1000],y[1000],m0[1000],m1[1000],m[2000],t[2000],k[2],a[2],b[2],f[1000];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d %d",&x[i],&y[i]);
scanf("%d %d %d",&k[0],&a[0],&b[0]);
scanf("%d %d %d",&k[1],&a[1],&b[1]);
for(i=0;i<n;i++)
{
m0[i]=x[i]*a[0]+y[i]*b[0];
m1[i]=x[i]*a[1]+y[i]*b[1];
m[i]=m0[i];
m[n+i]=m1[i];
t[i]=i;
t[n+i]=n+i;
f[i]=0;
}
max=0;
j=2*n;
while((k[0]>0||k[1]>0)&&j>0)
{
for(i=0;i<j-1;i++)
if(m[i]>m[i+1]||(m[i]==m[i+1]&&(t[i]<n?m0[t[i]]:m1[t[i]-n])<(t[i+1]<n?m0[t[i+1]]:m1[t[i+1]-n])))
{
tmp=m[i+1];
m[i+1]=m[i];
m[i]=tmp;
tmp=t[i+1];
t[i+1]=t[i];
t[i]=tmp;
}
if(t[j-1]<n&&k[0]>0&&f[t[j-1]%n]==0)
{
max+=m[j-1];
k[0]--;
f[t[j-1]%n]=1;
}
else if(t[j-1]>=n&&k[1]>0&&f[t[j-1]%n]==0)
{
max+=m[j-1];
k[1]--;
f[t[j-1]%n]=1;
}
j--;
}
printf("%d\n",max);
return 0;
}
int main(int argc, char* argv[])
{
int n,max,tmp,i,j;
int x[1000],y[1000],m0[1000],m1[1000],m[2000],t[2000],k[2],a[2],b[2],f[1000];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d %d",&x[i],&y[i]);
scanf("%d %d %d",&k[0],&a[0],&b[0]);
scanf("%d %d %d",&k[1],&a[1],&b[1]);
for(i=0;i<n;i++)
{
m0[i]=x[i]*a[0]+y[i]*b[0];
m1[i]=x[i]*a[1]+y[i]*b[1];
m[i]=m0[i];
m[n+i]=m1[i];
t[i]=i;
t[n+i]=n+i;
f[i]=0;
}
max=0;
j=2*n;
while((k[0]>0||k[1]>0)&&j>0)
{
for(i=0;i<j-1;i++)
if(m[i]>m[i+1]||(m[i]==m[i+1]&&(t[i]<n?m0[t[i]]:m1[t[i]-n])<(t[i+1]<n?m0[t[i+1]]:m1[t[i+1]-n])))
{
tmp=m[i+1];
m[i+1]=m[i];
m[i]=tmp;
tmp=t[i+1];
t[i+1]=t[i];
t[i]=tmp;
}
if(t[j-1]<n&&k[0]>0&&f[t[j-1]%n]==0)
{
max+=m[j-1];
k[0]--;
f[t[j-1]%n]=1;
}
else if(t[j-1]>=n&&k[1]>0&&f[t[j-1]%n]==0)
{
max+=m[j-1];
k[1]--;
f[t[j-1]%n]=1;
}
j--;
}
printf("%d\n",max);
return 0;
}