World of Darkraft - 2#11526

World of Darkraft - 2

2 seconds
256 megabytes
Very hard

Roma created a new character in the game «World of Darkraft - 2». In this game the character fights monsters, finds more and more advanced equipment that lets him fight stronger monsters.

The character can equip himself with distinct types of items. Power of each item depends on its level — a positive integer number. Initially the character has one -level item of each of the types.

After the victory over the monster the character finds exactly one new randomly generated item. The generation process looks as follows. Firstly, the type of the item is defined; each of the types has the same probability. Then the level of the new item is defined. Let's assume that the level of player's item of the chosen type is equal to now. The level of the new item will be chosen uniformly among integers from segment [1; t + 1].

From the new item and the current player's item of the same type, Roma chooses the best one (i.e. the one with greater level) and equips it (if both have the same level Roma chooses any). The remaining item is sold for coins. Roma sells an item of level of any type for coins.

Help Roma determine the expected number of earned coins after the victory over monsters.

Input

The first line contains two integers and k~(1 \le n \le 10^5; 1 \le k \le 100).

Output

Print a real number — expected number of earned coins after victory over monsters. The answer is considered correct if its relative or absolute error doesn't exceed 10^{-9}.

Examples

Example 1

Loading
Loading

Example 2

Loading
Loading

Example 3

Loading
Loading