E. Fry Beef
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

Asrit wants to fry beef. He has a large pan that can hold at most $$$n$$$ pieces of beef at the same time.

The rules for frying the beef are as follows:

  • Each piece of beef has $$$k$$$ sides.
  • It takes exactly $$$1$$$ second to cook any side.
  • Flipping takes no extra time.

Specifically, a piece of beef can be picked up or put down at any time. If not all $$$k$$$ sides of a piece of beef are cooked, it can be temporarily removed from the pan and put back later to continue cooking the uncooked sides.

Now, Asrit wants to cook a total of $$$m$$$ pieces of beef. Please help him calculate the minimum number of seconds required.

Input

The first line of input contains three integers $$$n, m, k$$$ $$$(1 \le n, k \le 10^6, 1 \le m \le 10^{10})$$$, representing the maximum number of pieces of beef the pan can hold simultaneously, the total number of pieces of beef to be cooked, and the number of sides of each piece of beef, respectively.

Output

Output a single integer on one line, representing the minimum number of seconds required to cook all the beef.

Example
Input
2 3 2
Output
3