For technical reasons, some programming languages (Kotlin, C #) will not be available during round 877.
×

Virtual contest is a way to take part in past contest, as close as possible to participation on time. It is supported only ACM-ICPC mode for virtual contests.
If you've seen these problems, a virtual contest is not for you - solve these problems in the archive.
If you just want to solve some problem from a contest, a virtual contest is not for you - solve this problem in the archive.
Never use someone else's code, read the tutorials or communicate with other person during a virtual contest.

No tag edit access

B. Pairs of Numbers

time limit per test

1 secondmemory limit per test

256 megabytesinput

standard inputoutput

standard outputLet's assume that we have a pair of numbers (*a*, *b*). We can get a new pair (*a* + *b*, *b*) or (*a*, *a* + *b*) from the given pair in a single step.

Let the initial pair of numbers be (1,1). Your task is to find number *k*, that is, the least number of steps needed to transform (1,1) into the pair where at least one number equals *n*.

Input

The input contains the only integer *n* (1 ≤ *n* ≤ 10^{6}).

Output

Print the only integer *k*.

Examples

Input

5

Output

3

Input

1

Output

0

Note

The pair (1,1) can be transformed into a pair containing 5 in three moves: (1,1) → (1,2) → (3,2) → (5,2).

Codeforces (c) Copyright 2010-2017 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: Oct/23/2017 23:38:40 (c3).

Desktop version, switch to mobile version.

User lists

Name |
---|