
/*
TASK: water
LANG: C
*/

#include<stdio.h>

#define MAXN 8388608
#define MAX2 40401
#define MAX1 201

void flow(int conf, int level);

int used[MAXN]={0};
int num=0;
int config;
int v,k,a1,a2,b1,b2,c1,c2;

int main () {
        scanf("%d %d",&v,&k);
        scanf("%d %d %d %d %d %d",&a1,&a2,&b1,&b2,&c1,&c2);
        config=v*201*201;
        used[config]=1;
        flow(config,0);
        printf("%d\n",num);          return 0;
        }

void flow(int conf, int level) {
     int curconf,o;
     int A,B,C;
     A=conf/MAX2;
     B=conf%MAX2;
     C=B%MAX1;
     B/=MAX1;
     if (A>a1) {
               o=A-a1;
               if (o>0) {
               curconf=a1*MAX2+(B+o)*MAX1+C;
               if (!used[curconf]) {
                                   if (a1==1||B+o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }
               curconf=a1*MAX2+B*MAX1+C+o;
               if (!used[curconf]) {
                                   if (a1==1||C+o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (A>a2) {
               o=A-a2;
               if (o>0) {
               curconf=a2*MAX2+(B+o)*MAX1+C;
               if (!used[curconf]) {
                                   if (a2==1||B+o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }
               curconf=a2*MAX2+B*MAX1+C+o;
               if (!used[curconf]) {
                                   if (a2==1||C+o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (B<b1) {
               o=A-(b1-B);
               if (o>0) {
               curconf=o*MAX2+b1*MAX1+C;
               if (!used[curconf]) {
                                   if (o==1||b1==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (B<b2) {
               o=A-(b2-B);
               if (o>0) {
               curconf=o*MAX2+b2*MAX1+C;
               if (!used[curconf]) {
                                   if (o==1||b1==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     curconf=(B+A)*MAX1+C;
     if (!used[curconf]) {
                         if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                       }
                                   }
     if (C<c1) {
               o=A-(c1-C);
               if (o>0) {
               curconf=o*MAX2+B*MAX1+c1;
               if (!used[curconf]) {
                                   if (o==1||c1==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (C<c2) {
               o=A-(c2-C);
               if (o>0) {
               curconf=o*MAX2+B*MAX1+c2;
               if (!used[curconf]) {
                                   if (o==1||c2==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     curconf=B*MAX1+C+A;
     if (!used[curconf]) {
                         if (level+1<k) {
                                        used[curconf]=1;
                                        flow(curconf,level+1);
                                        used[curconf]=0;
                                        }
                         }

     if (B>b1) {
               o=B-b1;
               if (o>0) {
               curconf=(A+o)*MAX2+b1*MAX1+C;
               if (!used[curconf]) {
                                   if (A+o==1||b1==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }
               curconf=A*MAX2+b1*MAX1+C+o;
               if (!used[curconf]) {
                                   if (b1==1||C+o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (B>b2) {
               o=B-b2;
               if (o>0) {
               curconf=(A+o)*MAX2+b2*MAX1+C;
               if (!used[curconf]) {
                                   if (A+o==1||b2==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }
               curconf=A*MAX2+b2*MAX1+C+o;
               if (!used[curconf]) {
                                   if (b2==1||C+o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (A<a1) {
               o=B-(a1-A);
               if (o>0) {
               curconf=a1*MAX2+o*MAX1+C;
               if (!used[curconf]) {
                                   if (a1==1||o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (A<a2) {
               o=B-(a2-A);
               if (o>0) {
               curconf=a2*MAX2+o*MAX1+C;
               if (!used[curconf]) {
                                   if (a2==1||o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     curconf=(B+A)*MAX2+C;
     if (!used[curconf]) {
                         if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }
     if (C<c1) {
               o=B-(c1-C);
               if (o>0) {
               curconf=A*MAX2+o*MAX1+c1;
               if (!used[curconf]) {
                                   if (o==1||c1==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (C<c2) {
               o=B-(c2-C);
               if (o>0) {
               curconf=A*MAX2+o*MAX1+c2;
               if (!used[curconf]) {
                                   if (o==1||c2==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     curconf=A*MAX2+C+B;
     if (!used[curconf]) {
                         if (level+1<k) {
                                        used[curconf]=1;
                                        flow(curconf,level+1);
                                        used[curconf]=0;
                                        }
                         }
     if (C>c1) {
               o=C-c1;
               if (o>0) {
               curconf=(A+o)*MAX2+B*MAX1+c1;
               if (!used[curconf]) {
                                   if (A+o==1||c1==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }
               curconf=A*MAX2+(B+o)*MAX1+c1;
               if (!used[curconf]) {
                                   if (a1==1||C+o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (C>c2) {
               o=C-c2;
               if (o>0) {
               curconf=(A+o)*MAX2+B*MAX1+c2;
               if (!used[curconf]) {
                                   if (A+o==1||c2==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }
               curconf=A*MAX2+(B+o)*MAX1+c2;
               if (!used[curconf]) {
                                   if (B+o==1||c2==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (A<a1) {
               o=C-(a1-A);
               if (o>0) {
               curconf=a1*MAX2+b1*MAX1+o;
               if (!used[curconf]) {
                                   if (a1==1||o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (A<a2) {
               o=C-(a2-A);
               if (o>0) {
               curconf=a2*MAX2+B*MAX1+o;
               if (!used[curconf]) {
                                   if (a2==1||o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     curconf=(A+C)*MAX2+B*MAX1;
     if (!used[curconf]) {
                         if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }
     if (B<b1) {
               o=C-(b1-B);
               if (o>0){
               curconf=A*MAX2+b1*MAX1+o;
               if (!used[curconf]) {
                                   if (b1==1||o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     if (B<b2) {
               o=C-(b2-B);
               if (o>0){
               curconf=A*MAX2+b2*MAX1+o;
               if (!used[curconf]) {
                                   if (b2==1||o==1) num++;
                                   else if (level+1<k) {
                                                        used[curconf]=1;
                                                        flow(curconf,level+1);
                                                        used[curconf]=0;
                                                        }
                                   }}
               }
     curconf=A*MAX2+(B+C)*MAX1;
     if (!used[curconf]) {
                         if (level+1<k) {
                                        used[curconf]=1;
                                        flow(curconf,level+1);
                                        used[curconf]=0;
                                        }
                         }
     return ;
     }
