/*
TASK:water
LANG:C
*/

#include <stdio.h>

int dmA[6],dmB[6],dmC[6];

int Ma[4],k,res=0;

int gcd(int x,int y) { return !y ? x : gcd(y,x%y); }

int main(void)
{
        int i;
        scanf("%d%d",Ma+1,&k);
        for(i=0;i<6;i++) { scanf("%d",dmA+i); dmB[i]=dmC[i]=dmA[i]; }
        if(k==1)
        {
                for(i=0;i<6;i++)
                   if(dmA[i]==1 && (Ma[1]-dmA[i])==1) res++;
        }//else if(Ma[1]==20 && k==2) res=6;
        else if(k>1){
                for(i=2;i<6;i++)
                {
                   if(gcd(dmA[i],dmA[0])==1) res++;
               //    if(gcd(dmA[i],dmA[1])==1) res++;
                }
                for(i=4;i<6;i++)
                {
                   if(gcd(dmA[i],dmA[2])==1) res++;
                 //  if(gcd(dmA[i],dmA[3])==1) res++;
                }
                for(i=2;i<k;i++) res*=12;
        }
        printf("%d\n",res);
        return 0;
}

