John Snow loves subsequence. His friend gave him an array of N integers. Now he asks to find all the possible subsequences of 1 to K which he can form from the given array. The subsequence should contain all the elements from 1,2,3...K. Here K can be any integer. K can be different for different subsequences.
Each element of the array should belong to exactly one subsequence. If it is possible then print the number of subsequences and in next line print all the subsequence in increasing order of their length. If not then print only the minimum numbers to add to the array such that it is possible to assign each element to a subsequence.
For eg :
5
1 3 3 4 5
Now here it is not possible to assign each number to a subsequence.
If we add elements 1, 2, 2 to the array then it is possible.
1 2 3
1 2 3 4 5
So the minimum count of numbers required is 3.
Input :
First line contains an integer N denoting the size of the array.
Next line contains N space separated integers denoting the array.
Output:
If possible print the number of subsequences. In next line print all the subsequences in increasing order of their length. If not possible then print only the minimum count of numbers which should be added to the array such that it is possible to assign an element to a subsequence.
Constraint :
1 ≤ N ≤ 105
1 ≤ A[i] ≤ 105