{
TASK:WATER
LANG:PASCAL
}


var a, take : array[1..12, 1..3]of longint;
    p ,vv, a1, a2, b1, b2, c1, c2, i, j, n, m, k : longint;
    st, i1, i2, i3, i4, i5, i6, otg : longint;
    f : text;
    s : array[1..8]of byte;
    v : array[1..3]of longint;

Procedure readin;
begin
  assign(f, '');
  reset(f);
  readln(f, vv, k);
  readln(f, a1, a2, b1, b2, c1, c2);
end;

Procedure pre;
var vvv : longint;
begin
  a[1, 1]:=1; a[1, 2]:=2; a[1, 3]:=v[1]-a1;
  a[2, 1]:=1; a[2, 2]:=2; a[2, 3]:=v[1]-a2;
  if v[1]> b1
    then begin a[3, 1]:=1; a[3, 2]:=2; a[3, 3]:=b1; end
    else a[3, 3]:=-1;
  if v[1]> b2 then begin
    a[4, 1]:=1; a[4, 2]:=2; a[4, 3]:=b2; end
    else a[4, 3]:=-1;
  a[5, 1]:=1; a[5, 2]:=3; a[5, 3]:=v[1]-a1;
  a[6, 1]:=1; a[6, 2]:=3; a[6, 3]:=v[1]-a2;
  if v[1] > c1 then begin
    a[7, 1]:=1; a[7, 2]:=3; a[7, 3]:=c1; end
    else a[7, 3]:=-1;
  if v[1] > c2 then begin
    a[8, 1]:=1; a[8, 2]:=3; a[8, 3]:=c2; end
    else a[8, 1]:=-1;
  a[9, 1]:=2; a[9, 2]:=3; a[9, 3]:=v[2]-b1;
  a[10, 1]:=2; a[10, 2]:=3; a[10, 3]:=v[2]-b2;
  if v[2] > c1 then begin
    a[11, 1]:=2; a[11, 2]:=3; a[11, 3]:=c1; end
    else a[11, 3]:=-1;
  if v[2] > c2 then begin
    a[12, 1]:=2; a[12, 2]:=3; a[12, 3]:=c2 end
    else a[12, 3]:=-1;

  {take trqq}

end;

Procedure test;
begin
  v[1]:=vv;
  v[2]:=0;
  v[3]:=0;
  for p:=1 to k do begin
    pre;
    m:=s[p];
    st:=a[m, 3];
    if st<0 then exit;
    if ( (v[a[m, 1]] - st)<0 ) or ( (v[a[m ,2]] + st)>vv ) then exit;
    dec(v[a[m ,1]], st);
    inc(v[a[m, 2]], st);
    if ( v[1]=1 )or ( v[2]=1 ) or ( v[3]=1 ) then begin
      inc(otg);
      exit;
    end;
  end;



end;


Begin
  otg:=0;
  readin;
  k:=2;
  v[1]:=vv;
  pre;
  if k=1 then begin
    for i1:=1 to 8 do begin
      s[1]:=i1;
      test;
    end;
  end;

  if k=2 then begin
    for i1:=1 to 8 do
      for i2:=1 to 12 do begin
        s[1]:=i1;
        s[2]:=i2;
        test;
      end;
  end;

  if k=3 then begin
    for i1:=1 to 8 do
      for i2:=1 to 12 do
        for i3:=1 to 12 do begin
          s[1]:=i1;
          s[2]:=i2;
          s[3]:=i3;
          test;
        end;
  end;

  if k=4 then begin
    for i1:=1 to 8 do
      for i2:=1 to 12 do
        for i3:=1 to 12 do
          for i4:=1 to 12 do begin
            s[1]:=i1;
            s[2]:=i2;
            s[3]:=i3;
            s[4]:=i4;
            test;
          end;
  end;

  if k=5 then begin
    for i1:=1 to 8 do
      for i2:=1 to 12 do
        for i3:=1 to 12 do
          for i4:=1 to 12 do
            for i5:=1 to 12 do begin
              s[1]:=i1;
              s[2]:=i2;
              s[3]:=i3;
              s[4]:=i4;
              s[5]:=i5;
              test;
            end;
  end;

  if k=6 then begin
    for i1:=1 to 8 do
      for i2:=1 to 12 do
        for i3:=1 to 12 do
          for i4:=1 to 12 do
            for i5:=1 to 12 do
              for i6:=1 to 12 do begin
                s[1]:=i1;
                s[2]:=i2;
                s[3]:=i3;
                s[4]:=i4;
                s[5]:=i5;
                test;
              end;
  end;

  writeln(otg+1);



End.

