C. Бильярд на шахматной доске
ограничение по времени на тест
2 seconds
ограничение по памяти на тест
256 megabytes
ввод
stdin
вывод
stdout

Ход шахматной фигуры бильярдный шар похож на ход шахматной фигуры слон, с тем лишь различием, что при столкновении с границей доски бильярдный шар может от нее отразиться и продолжить движение.

Более формально — сначала выбирается одно из четырех диагональных направлений и бильярдный шар движется в этом направлении. Попав на клетку, находящуюся на границе доски, бильярдный шар отражается от нее — изменяет направление своего движения на 90 градусов — и продолжает свое движение. В частности, попав в угловую клетку, бильярдный шар делает сразу 2 отражения и начинает двигаться в обратную сторону. В ходе своего движения бильярдный шар может сделать неограниченное число отражений. В любой клетке своей траектории шар может остановиться и на этом ход считается законченным.

Считается, что один бильярдный шар a бьет другой бильярдный шар b если a может сходить в ту клетку, где находится b.

Вам предлагается найти максимальное количество попарно не бьющих друг друга бильярдных шаров, которые можно разместить на шахматной доске размера n × m.

Входные данные

В первой строке находятся два целых числа — n и m (2 ≤ n, m ≤ 106).

Выходные данные

Выведите одно число — максимальное возможное количество попарно не бьющих друг друга бильярдных шаров.

Пожалуйста, не используйте спецификатор %lld для чтения или записи 64-х битовых чисел на С++. Рекомендуется использовать поток cin (также вы можете использовать спецификатор %I64d).

Примеры
Входные данные
3 4
Выходные данные
2
Входные данные
3 3
Выходные данные
3