#P7030. [NWRRC 2017] Little Difference

[NWRRC 2017] Little Difference

Description

Little Lidia likes playing with numbers. Today she has a positive integer nn , and she wants to decompose it to the product of positive integers.

Because Lidia is little, she likes to play with numbers with little difference. So, all numbers in decomposition should differ by at most one. And of course, the product of all numbers in the decomposition must be equal to nn . She considers two decompositions the same if and only if they have the same number of integers and there is a permutation that transforms the first one to the second one.

Write a program that finds all decompositions, which little Lidia can play with today.

Input Format

The only line of the input contains a single integer n(1n1018).n (1 \le n \le 10^{18}).

Output Format

In first line output the number of decompositions of nn , or 1−1 if this number is infinite. If number of decompositions is finite, print all of them one per line. In each line first print number kik_{i} of elements in decomposition. Then print kik_{i} integers in this decomposition in any order. Don't forget that decompositions which are different only in order of elements are considered the same.

12

3
1 12
3 2 3 2
2 4 3

1

-1

Hint

Time limit: 3 s, Memory limit: 512 MB.

spj provider:

/user/137367