function A(i: integer; j: integer): integer;
begin
if (i >= 2) and (j >= 2) then begin
//writeln("A(",i,",",j,") = A(",i-1,", A(",i,",",j-1,"+1)<br>");
A := A(i-1, A(i, j-1)+1);
end
else
if (i >=2) and (j = 1) then begin
//writeln("A(",i,",",j,") = A(",i-1,",2)");
A := A(i-1, 2);
end
else
if (i = 1) and (j>= 1) then begin
//writeln("A(",i,",",j,") = ",j);
A := j;
end
else begin
//writeln("A(",i,",",j,") = -1");
A := -1;
end;
end;
var
i,x,y : integer;
begin
readln (x,y);
write(A(x,y));
end.
ZnVuY3Rpb24gQShpOiBpbnRlZ2VyOyBqOiBpbnRlZ2VyKTogaW50ZWdlcjsKYmVnaW4KCWlmIChpID49IDIpIGFuZCAoaiA+PSAyKSB0aGVuIGJlZ2luCgkJLy93cml0ZWxuKCJBKCIsaSwiLCIsaiwiKSA9IEEoIixpLTEsIiwgQSgiLGksIiwiLGotMSwiKzEpPGJyPiIpOwoJCUEgOj0gQShpLTEsIEEoaSwgai0xKSsxKTsKCWVuZAoJZWxzZQoJaWYgKGkgPj0yKSBhbmQgKGogPSAxKSB0aGVuIGJlZ2luCgkJLy93cml0ZWxuKCJBKCIsaSwiLCIsaiwiKSA9IEEoIixpLTEsIiwyKSIpOwoJCUEgOj0gQShpLTEsIDIpOwoJZW5kCgllbHNlCglpZiAoaSA9IDEpIGFuZCAoaj49IDEpIHRoZW4gYmVnaW4KCQkvL3dyaXRlbG4oIkEoIixpLCIsIixqLCIpID0gIixqKTsKCQlBIDo9IGo7CgllbmQKCWVsc2UgYmVnaW4KCQkvL3dyaXRlbG4oIkEoIixpLCIsIixqLCIpID0gLTEiKTsKCQlBIDo9IC0xOwoJZW5kOwplbmQ7CnZhcgoJaSx4LHkgOiBpbnRlZ2VyOwpiZWdpbgoJCXJlYWRsbiAoeCx5KTsKCQl3cml0ZShBKHgseSkpOwplbmQu