Marton's friend Cero has an array of positive integers. In the beginning, Cero writes the first number on the board. Then he writes the second number to the left or to the right of the first number. After that, he writes the third number to the left or to the right of all the numbers written so far, and so on.
Marton asked Cero what the length of the longest possible strictly increasing subsequence (not necessarily of consecutive elements) was.
He also wants to know the number of such longest strictly increasing subsequences. More precisely, if the length of the longest increasing subsequence is , he wants to know the sum of numbers of strictly increasing subsequences of length for each possible sequence that Cero can construct. The sequences are different if they are constructed using a different order of moves, and the subsequences in a constructed sequence are different if they differ in at least one position.
Given the fact that the number of such subsequences can be extremely large, Marton will be satisfied with the value of that number modulo .
Cero really doesn't have time at the moment to find out the answers to Marton's questions, so he is asking you to do it for him.
Input Specification
The first line of input contains the integer .
The following line contains space-separated integers that represent the elements of Cera's array. Each number in the input will be smaller than or equal to .
Output Specification
You must output, in a single line, the length of the longest strictly increasing subsequence and the number of strictly increasing subsequences of that length, modulo , respectively.
Scoring
In test cases worth of total points, it will hold .
In test cases worth of total points, it will hold .
Sample Input 1
2
1 1
Sample Output 1
1 4
Explanation for Sample Output 1
The longest strictly increasing subsequence that can be obtained is of length and there are of them.
The first possible construction: writes down the first , the second to the right: the obtained sequence is 1, 1
; there are two strictly increasing subsequences of length : 1 1 and 1 1.
The second possible construction: writes down the first , the second to the left: the obtained sequence is 1, 1
; there are two strictly increasing subsequences of length : 1 1 and 1 1.
Sample Input 2
4
2 1 3 4
Sample Output 2
4 1
Explanation for Sample Output 2
The longest strictly increasing subsequence that can be obtained is of length .
It can be obtained only if he constructs the sequence 1 2 3 4
. In that construction, it is the only strictly increasing subsequence of length , so the number of such is .
Comments