I. Ideal 2B
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

You have a number $$$x$$$. This number is too large, and you would like to write it in a shortened form. For the sake of unambiguity, you have decided to introduce rules for shortening any non-negative number as follows:

  • The shortened form of the number consists of no more than $$$4$$$ characters.
  • If the number $$$x \lt 1000$$$, then its shortened form is the same as the full one, otherwise the shortened form consists of the number $$$a$$$ (possibly a real number) and the character $$$c$$$ (one of K, M, B), indicating the power of ten: K – thousand, M – million, B – billion. The value of the shortened notation is called the number $$$y$$$, equal to $$$a$$$ multiplied by the corresponding power of ten, depending on the character $$$c$$$.
  • The digits of the shortened form match the first digits of the full form.
  • Out of all possible variants, the shortened form of $$$x$$$ is the one whose value does not exceed $$$x$$$ and is closest to $$$x$$$. If there are several such forms, the shortest one is chosen (see examples).

Write the number in its shortened form!

Input

A single line contains one integer $$$x$$$ ($$$0 \le x \lt 10^{12}$$$).

Output

Print a single line – the shortened notation of the number $$$x$$$.

Examples
Input
567
Output
567
Input
1099
Output
1K
Input
9588
Output
9.5K
Input
2000000000
Output
2B
Input
876289
Output
876K
Note

In the second test case, there are several shortened forms that have the closest value to $$$x$$$: 1.0K and 1K. However, according to the fourth point, the shortest one is suitable for us, that is, 1K.