当你觉得植物学太有挑战性时,你随时可以转向真菌学——对真菌的研究!作为你的首批实验之一,你计划在一个无限大的二维展区内种植许多香菇,该展区可以建模为一个网格。
事实证明,你种植的这种特定品种的香菇具有固定的形状。每只香菇都可以表示为一个宽度恰好为一个网格单位的垂直菌柄(高度任意)。然后,菌柄最顶端的网格向左、向右和向上各延伸一个网格,形成香菇的菌盖。下图展示了三只这样的香菇:
图 M.1:第一组样例的示意图。
你注意到,为了让每只香菇存活,你的展区必须满足以下两个条件:
- 任何网格都不能被多于一只香菇共用。
- 所有香菇必须在同一行开始生长。
为了让你的展区更有趣,你希望种植香菇,使得展区中存在一个 $r \times c$ 的矩形,该矩形内的每个网格都被香菇覆盖。但在该展区中,供香菇生长的空间并不多。假设你可以控制种植的每只香菇的位置和高度,要用香菇完全填满一个 $r \times c$ 的矩形,最少需要多少只香菇?
输入格式
输入的第一行包含两个整数 $r$ 和 $c$($1 \le r, c \le 1000$),表示你想要用香菇完全填满的展区中矩形的行数和列数。
输出格式
输出一个整数,表示完全填满一个 $r \times c$ 矩形所需的最少香菇数量,如果无法做到则输出 $-1$。
样例
输入样例 1
2 3
输出样例 1
2
输入样例 2
4 1
输出样例 2
1
输入样例 3
100 100
输出样例 3
-1