/*
TASK:water
LANG:C
*/
#include<stdio.h>

int V,K;


int m[10][10] = {0};
int x[10] = {0};
int used[210][210][210] = {0};

int ans = 0;

int a[10]={0}, b[10]={0}, c[10]={0};

void solve();
void input();
void rec(int num);

int main()
{
    input();
    solve();

    return 0;
}



void rec(int num)
{

int i,j,k;
int vol;

if(x[1] == 1 || x[2] == 1 || x[3] == 1) 
{
        ans++;
        return;
}


if(num == K + 1) return;





for(i=1; i<=3; i++)
 for(j=1; j<=3; j++)
  if(i!=j)
  {
  
  for(k=0; k<=2; k++)
   {
   vol = x[i] - m[i][k];
   if(vol > 0 && x[j] + vol <= V)
    {
    x[i] -= vol; x[j] += vol;
    if(used[x[1]][x[2]][x[3]] == 0)
     {
     used[x[1]][x[2]][x[3]] = 1;
     a[num] = x[1]; b[num] = x[2]; c[num] = x[3];
     rec(num+1);
     used[x[1]][x[2]][x[3]] = 0;
     }
    x[i] += vol; x[j] -= vol;
    } 
   }


  for(k=1; k<=2; k++)
   {
   vol = m[j][k] - x[j];
   if(vol > 0 && x[i] >= vol && x[j] + vol <= V && x[i] - vol != m[i][1] && x[i]-vol !=m[i][2] && x[i]-vol!=m[i][0])
    {
    x[i] -= vol; x[j] += vol;
    if(used[x[1]][x[2]][x[3]] == 0)
     {
     used[x[1]][x[2]][x[3]] = 1;
     a[num] = x[1]; b[num] = x[2]; c[num] = x[3];
     rec(num+1);
     used[x[1]][x[2]][x[3]] = 0;
     }
    x[i] +=vol; x[j] -= vol;
    } 
   }
 }
  
}
void solve()
{
x[1] = V;
x[2] = x[3] = 0;
rec(1);
printf("%d\n",ans);
}

void input()
{
int i,j;
int t;

scanf("%d%d",&V,&K);

for(i=1; i<=3; i++) 
 {
 scanf("%d%d",&m[i][1],&m[i][2]);
 m[i][0] = 0; m[i][3] = V;
 if(m[i][2] < m[i][1])
  {
  t = m[i][1];
  m[i][1] = m[i][2];
  m[i][2] = t;
  }
 }
 
}
 


