{
TASK:water
LANG:PASCAL
}


type el = record
           d1, d2, val : byte;
          end;


var used : array[0..200, 0..200, 0..200] of byte;
    stack : array[0..5, 1..3] of longint;
    fl, c, v, i, j, k, l, o, p, m, n : longint;
    m1, m2, m3 : el;
    len, answer : longint;


procedure input;
 begin
  readln(v, k);
  readln(m1.d1, m1.d2, m2.d1, m2.d2, m3.d1, m3.d2);
  m1.val := v;
  if m1.d1 > m1.d2 then
    begin
     p := m1.d1;
     m1.d1 := m1.d2;
     m1.d2 := p;
    end;
  if m2.d1 > m2.d2 then
    begin
     p := m2.d1;
     m2.d1 := m2.d2;
     m2.d2 := p;
    end;
  if m3.d1 > m3.d2 then
    begin
     p := m3.d1;
     m3.d1 := m3.d2;
     m3.d2 := p;
    end;

 end;


procedure count(v1, v2, v3 : byte; w : byte);
var a : array[1..5, 1..3] of byte;
    c : byte;
 begin
  used[v1, v2, v3] := 1;
  stack[w, 1] := v1;
  stack[w, 2] := v2;
  stack[w, 3] := v3;
  if (v1 = 1) or (v2 = 1) or (v3 = 1) then
    begin
     inc(answer);
    end
  else if w < k then
    begin
     {ab}
     if v1 > 0 then
       begin
        c := 0;
        if (v2 < m2.d1) and (v1 >= m2.d1 - v2) and (used[v1 - (m2.d1 - v2), m2.d1, v3] = 0) then
          begin
           count(v1 - (m2.d1 - v2), m2.d1, v3, w + 1);
           inc(c);
           a[c, 1] := v1 - (m2.d1 - v2);
           a[c, 2] := m2.d1;
           a[c, 3] := v3;
          end;
        if (v2 < m2.d2) and (v1 >= m2.d2 - v2) and (used[v1 - (m2.d2 - v2), m2.d2, v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 - (m2.d2 - v2)) and (a[j, 2] =  m2.d2) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(v1 - (m2.d2 - v2), m2.d2, v3, w + 1);
              inc(c);
              a[c, 1] := v1 - (m2.d2 - v2);
              a[c, 2] := m2.d2;
              a[c, 3] := v3;
             end;
          end;
        if (v1 >= m1.d1) and (used[m1.d1, v2 + (v1 - m1.d1), v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = m1.d1) and (a[j, 2] =  v2 + (v1 - m1.d1)) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(m1.d1, v2 + (v1 - m1.d1), v3, w + 1);
              inc(c);
              a[c, 1] := m1.d1;
              a[c, 2] := v2 + (v1 - m1.d1);
              a[c, 3] := v3;
             end;
          end;

        if (v1 >= m1.d2) and (used[m1.d2, v2 + (v1 - m1.d2), v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = m1.d2) and (a[j, 2] =  v2 + (v1 - m1.d2)) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(m1.d2, v2 + (v1 - m1.d2), v3, w + 1);
              inc(c);
              a[c, 1] := m1.d2;
              a[c, 2] := v2 + (v1 - m1.d2);
              a[c, 3] := v3;
             end;
          end;

        if (used[0, v1 + v2, v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = 0) and (a[j, 2] =  v1 + v2) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(0, v1 + v2, v3, w + 1);
              inc(c);
              a[c, 1] := 0;
              a[c, 2] := v1 + v2;
              a[c, 3] := v3;
             end;
          end;

       end;
     {ac}
     if v1 > 0 then
       begin
        c := 0;
        if (v3 < m3.d1) and (v1 >= m3.d1 - v3) and (used[v1 - (m3.d1 - v3), v2, m3.d1] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 - (m3.d1 - v3)) and (a[j, 2] =  v2) and (a[j, 3] = m3.d1) then fl := 1;
           if fl = 0 then
             begin
              count(v1 - (m3.d1 - v3), v2, m3.d1, w + 1);
              inc(c);
              a[c, 1] := v1 - (m3.d1 - v3);
              a[c, 2] := v2;
              a[c, 3] := m3.d1;
             end;
          end;

        if (v3 < m3.d2) and (v1 >= m3.d2 - v3) and (used[v1 - (m3.d2 - v3), v2, m3.d2] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 - (m3.d2 - v3)) and (a[j, 2] =  v2) and (a[j, 3] = m3.d2) then fl := 1;
           if fl = 0 then
             begin
              count(v1 - (m3.d2 - v3), v2, m3.d2, w + 1);
              inc(c);
              a[c, 1] := v1 - (m3.d2 - v3);
              a[c, 2] := v2;
              a[c, 3] := m3.d2;
             end;
          end;

        if (v1 >= m1.d1) and (used[m1.d1, v2, v3 + (v1 - m1.d1)] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = m1.d1) and (a[j, 2] =  v2) and (a[j, 3] = v3 + (v1 - m1.d1)) then fl := 1;
           if fl = 0 then
             begin
              count(m1.d1, v2, v3 + (v1 - m1.d1), w + 1);
              inc(c);
              a[c, 1] := m1.d1;
              a[c, 2] := v2;
              a[c, 3] := v3 + (v1 - m1.d1);
             end;
          end;

        if (v1 >= m1.d2) and (used[m1.d2, v2, v3 + (v1 - m1.d2)] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = m1.d2) and (a[j, 2] =  v2) and (a[j, 3] = v3 + (v1 - m1.d2)) then fl := 1;
           if fl = 0 then
             begin
              count(m1.d2, v2, v3 + (v1 - m1.d2), w + 1);
              inc(c);
              a[c, 1] := m1.d2;
              a[c, 2] := v2;
              a[c, 3] := v3 + (v1 - m1.d2);
             end;
          end;

        if (used[0, v2, v1 + v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = 0) and (a[j, 2] =  v2) and (a[j, 3] = v1 + v3) then fl := 1;
           if fl = 0 then
             begin
              count(0, v2, v1 + v3, w + 1);
              inc(c);
              a[c, 1] := 0;
              a[c, 2] := v2;
              a[c, 3] := v1 + v3;
             end;
          end;

       end;
     {ba}
     if v2 > 0 then
       begin
        c := 0;
        if (v1 < m1.d1) and (v2 >= m1.d1 - v1) and (used[m1.d1, v2 - (m1.d1 - v1), v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = m1.d1) and (a[j, 2] =  v2 - (m1.d1 - v1)) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(m1.d1, v2 - (m1.d1 - v1), v3, w + 1);
              inc(c);
              a[c, 1] := m1.d1;
              a[c, 2] := v2 - (m1.d1 - v1);
              a[c, 3] := v3;
             end;
          end;

        if (v1 < m1.d2) and (v2 >= m1.d2 - v1) and (used[m1.d2, v2 - (m1.d2 - v1), v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = m1.d2) and (a[j, 2] =  v2 - (m1.d2 - v1)) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(m1.d2, v2 - (m1.d2 - v1), v3, w + 1);
              inc(c);
              a[c, 1] := m1.d2;
              a[c, 2] := v2 - (m1.d2 - v1);
              a[c, 3] := v3;
             end;
          end;

        if (v2 >= m2.d1) and (used[v1 + (v2 - m2.d1), m2.d1, v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 + (v2 - m2.d1)) and (a[j, 2] =  m2.d1) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(v1 + (v2 - m2.d1), m2.d1, v3, w + 1);
              inc(c);
              a[c, 1] := v1 + (v2 - m2.d1);
              a[c, 2] := m2.d1;
              a[c, 3] := v3;
             end;
          end;

        if (v2 >= m2.d2) and (used[v1 + (v2 - m2.d2), m2.d2, v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 + (v2 - m2.d2)) and (a[j, 2] =  m2.d2) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(v1 + (v2 - m2.d2), m2.d2, v3, w + 1);
              inc(c);
              a[c, 1] := v1 + (v2 - m2.d2);
              a[c, 2] := m2.d2;
              a[c, 3] := v3;
             end;
          end;

        if (used[v1 + v2, 0, v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 + v2) and (a[j, 2] =  0) and (a[j, 3] = v3) then fl := 1;
           if fl = 0 then
             begin
              count(v1 + v2, 0, v3, w + 1);
              inc(c);
              a[c, 1] := v1 + v2;
              a[c, 2] := 0;
              a[c, 3] := v3;
             end;
          end;

       end;
     {bc}
     if v2 > 0 then
       begin
        c := 0;
        if (v3 < m3.d1) and (v2 >= m3.d1 - v3) and (used[v1, v2 - (m3.d1 - v3), m3.d1] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  v2 - (m3.d1 - v3)) and (a[j, 3] = m3.d1) then fl := 1;
           if fl = 0 then
             begin
              count(v1, v2 - (m3.d1 - v3), m3.d1, w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := v2 - (m3.d1 - v3);
              a[c, 3] := m3.d1;
             end;
          end;

        if (v3 < m3.d2) and (v2 >= m3.d2 - v3) and (used[v1, v2 - (m3.d2 - v3), m3.d2] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  v2 - (m3.d2 - v3)) and (a[j, 3] = m3.d2) then fl := 1;
           if fl = 0 then
             begin
              count(v1, v2 - (m3.d2 - v3), m3.d2, w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := v2 - (m3.d2 - v3);
              a[c, 3] := m3.d2;
             end;
          end;

        if (v2 >= m2.d1) and (used[v1, m2.d1, v3 + (v2 - m2.d1)] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  m2.d1) and (a[j, 3] = v3 + (v2 - m2.d1)) then fl := 1;
           if fl = 0 then
             begin
              count(v1, m2.d1, v3 + (v2 - m2.d1), w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := m2.d1;
              a[c, 3] := v3 + (v2 - m2.d1);
             end;
          end;

        if (v2 >= m2.d2) and (used[v1, m2.d2, v3 + (v2 - m2.d2)] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  m2.d2) and (a[j, 3] = v3 + (v2 - m2.d2)) then fl := 1;
           if fl = 0 then
             begin
              count(v1, m2.d2, v3 + (v2 - m2.d2), w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := m2.d2;
              a[c, 3] := v3 + (v2 - m2.d2);
             end;
          end;

        if (used[v1, 0, v2 + v3] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  0) and (a[j, 3] = v2 + v3) then fl := 1;
           if fl = 0 then
             begin
              count(v1, 0, v2 + v3, w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := 0;
              a[c, 3] := v2 + v3;
             end;
          end;

       end;
     {ca}
     if v3 > 0 then
       begin
        c := 0;
        if (v1 < m1.d1) and (v3 >= m1.d1 - v1) and (used[m1.d1, v2, v3 - (m1.d1 - v1)] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = m1.d1) and (a[j, 2] =  v2) and (a[j, 3] = v3 - (m1.d1 - v1)) then fl := 1;
           if fl = 0 then
             begin
              count(m1.d1, v2, v3 - (m1.d1 - v1), w + 1);
              inc(c);
              a[c, 1] := m1.d1;
              a[c, 2] := v2;
              a[c, 3] := v3 - (m1.d1 - v1);
             end;
          end;

        if (v1 < m1.d2) and (v3 >= m1.d2 - v1) and (used[m1.d2, v2, v3 - (m1.d2 - v1)] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = m1.d2) and (a[j, 2] =  v2) and (a[j, 3] = v3 - (m1.d2 - v1)) then fl := 1;
           if fl = 0 then
             begin
              count(m1.d2, v2, v3 - (m1.d2 - v1), w + 1);
              inc(c);
              a[c, 1] := m1.d2;
              a[c, 2] := v2;
              a[c, 3] := v3 - (m1.d2 - v1);
             end;
          end;

        if (v3 >= m3.d1) and (used[v1 + (v3 - m3.d1), v2, m3.d1] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 + (v3 - m3.d1)) and (a[j, 2] =  v2) and (a[j, 3] = m3.d1) then fl := 1;
           if fl = 0 then
             begin
              count(v1 + (v3 - m3.d1), v2, m3.d1, w + 1);
              inc(c);
              a[c, 1] := v1 + (v3 - m3.d1);
              a[c, 2] := v2;
              a[c, 3] := m3.d1;
             end;
          end;

        if (v3 >= m3.d2) and (used[v1 + (v3 - m3.d2), v2, m3.d2] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 + (v3 - m3.d2)) and (a[j, 2] =  v2) and (a[j, 3] = m3.d2) then fl := 1;
           if fl = 0 then
             begin
              count(v1 + (v3 - m3.d2), v2, m3.d2, w + 1);
              inc(c);
              a[c, 1] := v1 + (v3 - m3.d2);
              a[c, 2] := v2;
              a[c, 3] := m3.d2;
             end;
          end;

        if (used[v1 + v3, v2, 0] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1 + v3) and (a[j, 2] =  v2) and (a[j, 3] = 0) then fl := 1;
           if fl = 0 then
             begin
              count(v1 + v3, v2, 0, w + 1);
              inc(c);
              a[c, 1] := v1 + v3;
              a[c, 2] := v2;
              a[c, 3] := 0;
             end;
          end;

       end;
     {cb}
     if v3 > 0 then
       begin
        c := 0;
        if (v2 < m2.d1) and (v3 >= m2.d1 - v2) and (used[v1, m2.d1, v3 - (m2.d1 - v2)] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  m2.d1) and (a[j, 3] = v3 - (m2.d1 - v2)) then fl := 1;
           if fl = 0 then
             begin
              count(v1, m2.d1, v3 - (m2.d1 - v2), w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := m2.d1;
              a[c, 3] := v3 - (m2.d1 - v2);
             end;
          end;
        if (v2 < m2.d2) and (v3 >= m2.d2 - v2) and (used[v1, m2.d2, v3 - (m2.d2 - v2)] = 0) then
          begin
          fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  m2.d2) and (a[j, 3] = v3 - (m2.d2 - v2)) then fl := 1;
           if fl = 0 then
             begin
              count(v1, m2.d2, v3 - (m2.d2 - v2), w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := m2.d2;
              a[c, 3] := v3 - (m2.d2 - v2);
             end;
          end;

        if (v3 >= m3.d1) and (used[v1, v2 + (v3 - m3.d1), m3.d1] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  v2 + (v3 - m3.d1)) and (a[j, 3] = m3.d1) then fl := 1;
           if fl = 0 then
             begin
              count(v1, v2 + (v3 - m3.d1), m3.d1, w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := v2 + (v3 - m3.d1);
              a[c, 3] := m3.d1;
             end;
          end;

        if (v3 >= m3.d2) and (used[v1, v2 + (v3 - m3.d2), m3.d2] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  v2 + (v3 - m3.d2)) and (a[j, 3] = m3.d2) then fl := 1;
           if fl = 0 then
             begin
              count(v1, v2 + (v3 - m3.d2), m3.d2, w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := v2 + (v3 - m3.d2);
              a[c, 3] := m3.d2;
             end;
          end;

        if (used[v1, v2 + v3, 0] = 0) then
          begin
           fl := 0;
           for j := 1 to c do
             if (a[j, 1] = v1) and (a[j, 2] =  v2 + v3) and (a[j, 3] = 0) then fl := 1;
           if fl = 0 then
             begin
              count(v1, v2 + v3, 0, w + 1);
              inc(c);
              a[c, 1] := v1;
              a[c, 2] := v2 + v3;
              a[c, 3] := 0;
             end;
          end;

       end;
    end;
  used[v1, v2, v3] := 0;
 end;





begin
 input;
 count(v, 0, 0, 0);
 writeln(answer);
end.


