# Chess

### Memory limit: 32 MB

Byteman knocked at Byteguy's door at exactly 5 pm.
This was not necessary, though, as Byteguy had known his punctuality well and was about to open the door.

After drinking a cup of warm tea, Byteguy brought a chessboard to play a chess game, as they had planned, but Byteman said that perfect information games are not challenging enough and it might be a good idea to do something else.
Being unable to come up with sufficient arguments, Byteguy had to agree.
Finding an intellectual challenge, which they had never tried, took them some time, but after a while friends decided to solve the following problem.

You are given a chessboard.
Compute the number of ways in which you can put rooks on it in such a way, that in each column and in each row there is at most one rook.
Moreover, the arrangement of rooks should look exactly the same after rotating the chessboard by (in horizontal plane).

The colouring of chessboard fields can change after the rotation, but it does not matter here.

## Input

The first and only line of the standard input contains a single integer ().

## Output

Your program should write to the standard output a single line containing one integer - the number of different arrangements of rooks on a chessboard, in which there is at most one rook in every row and every column and the arrangement does not change after rotating the chessboard by .

## Example

For the input data:

1

the correct result is:

1

*Task author: Lukasz Bieniasz-Krzywiec.*