Sasha is a very happy guy, that's why he is always on the move. There are n cities in the country where Sasha lives. They are all located on one straight line, and for convenience, they are numbered from 1 to n in increasing order. The distance between any two adjacent cities is equal to 1 kilometer. Since all roads in the country are directed, it's possible to reach the city y from the city x only if x < y. 

Once Sasha decided to go on a trip around the country and to visit all n cities. He will move with the help of his car, Cheetah-2677. The tank capacity of this model is v liters, and it spends exactly 1 liter of fuel for 1 kilometer of the way. At the beginning of the journey, the tank is empty. Sasha is located in the city with the number 1 and wants to get to the city with the number n. There is a gas station in each city. In the i-th city, the price of 1 liter of fuel is i dollars. It is obvious that at any moment of time, the tank can contain at most v liters of fuel.

Sasha doesn't like to waste money, that's why he wants to know what is the minimum amount of money is needed to finish the trip if he can buy fuel in any city he wants. Help him to figure it out!

Input

The first line contains two integers n and v (2 ≤ n ≤ 100, 1 ≤ v ≤ 100) — the number of cities in the country and the capacity of the tank.

Output

Print one integer — the minimum amount of money that is needed to finish the trip.

Examples

Input


4 2


Output


4


Input


7 6


Output


6

Note

In the first example, Sasha can buy 2 liters for 2 dollars (1 dollar per liter) in the first city, drive to the second city, spend 1 liter of fuel on it, then buy 1 liter for 2 dollars in the second city and then drive to the 4-th city. Therefore, the answer is 1+1+2=4.

In the second example, the capacity of the tank allows to fill the tank completely in the first city, and drive to the last city without stops in other cities.
'''
From the problem statement:

- we know that buying fuel in later cities
cost much more than earlier cities. Thus we need to refuel as much as
possible on earlier cities.
- we know that initially the tank is empty. Thus it is a must to refuel
on first city.
- we know that the limit of fuel could be carried on by car limited by
the capacity of tank. Thus we cannot carry more limit than the capacity
of tank (v).
- we know that to move to adjacent city, requires 1 liter of fuel. Thus
everytime the car move to another city, the fuel would be decreased by 1.

So the strategy we could use to minimize the cost is we refuel as much
as possible on earlier cities. After we gain enough fuel to go to `n` city
we could just drive until the tank is empty.

So for example, if we have n=5 & v=2, then we keep refueling the car until
city 3. Thus minimizing the cost needed to travel to city 5.

Notice that only on city 1 we refuel the tank from 0 to v. In the next
cities we just need to fill from v-1 to v (since everytime the car move to
next city it will decrease the tank by 1 liter).

Thus the minimum cost for traveling to city 1 to n with v < n-1 (since we start 
from index 1) is: 

v (full refuel in city 1) 
2 (refuel 1 liter in city 2) 
3 (refuel 1 liter in city 3)
.
.
.
n-v (refuel 1 liter in city n-v)

This forming formula: v + 2 + ... + (n-v)

Notice that if v is much higher than (n-1), then we just need to
refuel on city 1, then drive until city n. Which resulted in (n-1) dollar.

In short actually we could think the formula as sliding window in number sequence.
Whenever the end hasn't reached the last number, the cost would keep accumulating.
But on city 1 the cost is v. 
'''

n, v = map(int, input().split())
print(n-1 if v >= n-1 else v + sum([i for i in range(2, (n-v)+1)]))