Package for this problem was not updated by the problem writer or Codeforces administration after we’ve upgraded the judging servers. To adjust the time limit constraint, solution execution time will be multiplied by 2. For example, if your solution works for 400 ms on judging servers, then value 800 ms will be displayed and used to determine the verdict.

No tag edit access

C. Hexadecimal's Numbers

time limit per test

1 secondmemory limit per test

64 megabytesinput

standard inputoutput

standard outputOne beautiful July morning a terrible thing happened in Mainframe: a mean virus Megabyte somehow got access to the memory of his not less mean sister Hexadecimal. He loaded there a huge amount of *n* different natural numbers from 1 to *n* to obtain total control over her energy.

But his plan failed. The reason for this was very simple: Hexadecimal didn't perceive any information, apart from numbers written in binary format. This means that if a number in a decimal representation contained characters apart from 0 and 1, it was not stored in the memory. Now Megabyte wants to know, how many numbers were loaded successfully.

Input

Input data contains the only number *n* (1 ≤ *n* ≤ 10^{9}).

Output

Output the only number — answer to the problem.

Examples

Input

10

Output

2

Note

For *n* = 10 the answer includes numbers 1 and 10.

Codeforces (c) Copyright 2010-2017 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: Mar/30/2017 23:21:33 (p1).

Desktop version, switch to mobile version.
User lists

Name |
---|