A. Опровержение гипотез
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Ваш друг недавно узнал про взаимно простые числа. Пара чисел (a, b) называется взаимно простой, если максимальное число, которое делит оба числа a и b, равно единице.

Ваш друг часто придумывает разные утверждения. Недавно он предположил, что если пара чисел (a, b) является взаимно простой и пара чисел (b, c) является взаимно простой, то пара чисел (a, c) является взаимно простой.

Вы хотите опровергнуть утверждение вашего друга. Ваша задача — найти тройку различных чисел (a, b, c), для которой утверждение вашего друга неверно, и числа в тройке удовлетворяют условию l ≤ a < b < c ≤ r.

Формально, вам нужно найти тройку чисел (a, b, c), такую что l ≤ a < b < c ≤ r, пары (a, b) и (b, c) взаимно простые, а пара (a, c) не является взаимно простой.

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

В единственной строке записано два целых положительных числа через пробел l, r (1 ≤ l ≤ r ≤ 1018; r - l ≤ 50).

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

В единственной строке выведите три целых положительных числа через пробел a, b, c — искомую тройку различных чисел (a, b, c). Если существует несколько решений, разрешается вывести любое. Числа в тройке необходимо выводить в порядке возрастания.

Если искомой тройки не существует, выведите единственное число -1.

Примеры
Входные данные
2 4
Выходные данные
2 3 4
Входные данные
10 11
Выходные данные
-1
Входные данные
900000000000000009 900000000000000029
Выходные данные
900000000000000009 900000000000000010 900000000000000021
Примечание

В первом примере пара (2, 4) не является взаимно простой, а пары (2, 3) и (3, 4) — взаимно простые.

В втором примере нельзя составить тройку из трех различных чисел, поэтому ответ -1.

В третьем примере нетрудно заметить, что числа 900000000000000009 и 900000000000000021 делятся на 3.