I. Itsy Bits
time limit per test
1 second
memory limit per test
1024 megabytes
input
standard input
output
standard output

On most modern computers, unsigned numbers are stored in memory-aligned chunks of data, made up of bits. Depending on the size, one storage unit may be called a word, a byte, or even a nybble.

Each kind of storage takes exactly $$$b = 2^x$$$ bits of data, for some non-negative integer $$$x$$$. The smallest unsigned number that can be stored in a $$$b$$$-bit word is $$$0$$$, and the largest is $$$2^b - 1$$$.

We are designing the storage for an embedded system where the maximum possible number in storage will be known upfront. Calculate the number of bits we should dedicate to it.

Input

  • One line containing the largest number we need to store, $$$n$$$, ($$$1 \le n \le 10^{18}$$$).
Output

Output the number of bits we need to allocate to store $$$n$$$, which should be a power of two, followed by either " bit" or " bits" as appropriate.

Examples
Input
1
Output
1 bit
Input
37
Output
8 bits
Input
1100586419201
Output
64 bits