C. Древний храм
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Давным-давно Андрей придумал задачу по программированию. Главным героем в ней был Индиана Джонс, который хотел пробраться в храм древней забытой цивилизации, однако столкнулся с загадкой. Рядом с входом в храм стояла скульптура протянувшего вперед руки существа, а на стене было написано предложение вложить в левую и правую руку статуи некоторое ненулевое количество монет, чтобы произведение этих количеств было ровно в k раз больше их суммы. Само собой, если сделать это неверно, двери в храм не открылись бы, а ловушки могли бы убить или покалечить доктора Джонса.

К сожалению, эта задача так и не была задействована на том соревновании, куда Андрей первоначально хотел ее предложить. Поэтому ее придется решать вам, здесь и сейчас. Вы должны отыскать все способы вложить монеты в руки скульптуры, чтобы двери в храм открылись.

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

В единственной строке записано единственное целое число k (1 ≤ k ≤ 109) — количество раз, в которое должны отличаться произведение количеств монет и их суммы.

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

В первой строке выведите единственное целое число n — число различных пар количеств монет, открывающих двери в храм.

Далее в n строках в любом порядке выведите по два целых числа через пробел — количества монет, которые необходимо вложить в левую и правую руку статуи соответственно. Каждая пара должна встречаться ровно один раз; пары, отличающиеся порядком своих элементов, считаются различными.

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