Australia consists of a single long road from west to east. There are
stores along this road, with the
-th store having an integer position of
.
You have been commissioned to design and install a signpost. First, you will choose a real number
, representing the position of the signpost. Let
represent the distance from the signpost to the
-th store. The signpost will contain all
stores on it in some order from top to bottom, under the condition that if
, then store
is listed higher up on the signpost than store
. If two stores are equidistant from the signpost, then you can decide which of stores
and
is listed higher up the signpost.
Your first task is to calculate how many distinct signposts you could make. Since this number may be large, you want to find this number modulo
.
Constraints


All
are distinct.
Subtask 1 [50%]

Subtask 2 [50%]
No additional constraints.
Input Specification
The first line contains a single integer,
.
The second line contains
space-separated integers,
.
Output Specification
On a single line, print the number of possible distinct signposts, modulo
.
Sample Input
Copy
3
1 2 3
Sample Output
Copy
4
Explanation
Consider the case where the signpost is at position
. Then
. From the top to bottom, the signpost could list stores
then
then
, or stores
then
then
.
If we consider all possible values of
, including non-integer and negative values, we see that there are
distinct signposts which can be made.
Comments