Наконец-то в городе открылось заведение, предназначенное специально для тех, кто любит кино и не любит компанию. Добро пожаловать в кинотеатр для мизантропов!
Чтобы ничьи головы не заслоняли зрителям экран, кресла в кинотеатре расположены в один ряд и пронумерованы слева направо числами от 1 до N. Перед сеансом посетители заходят в зрительный зал по очереди, и каждый из них может выбрать любое свободное место по своему вкусу.
Разумеется, публика кинотеатра полностью оправдывает его название, поэтому каждый зритель, начиная со второго, будет выбирать себе место таким образом, чтобы оказаться как можно дальше от ближайшего соседа. Если подходящих мест несколько, зритель выберет кресло с наименьшим номером.
Вы знаете, сколько зрителей пришло на сеанс, и какое место выбрал первый из них. Сможете ли вы определить, какое место в итоге займёт каждый зритель?
Ввод содержит целые числа N, M и S1 (1 ≤ N ≤ 106, 1 ≤ M, S1 ≤ N) — соответственно количество мест в кинотеатре, количество зрителей и номер места, которое занял первый зритель.
Вычислите сумму (где Si — номер места, занятого i-м зрителем) и выведите остаток от деления этой суммы на 1000000007.
В первом примере зрители занимают следующие места: #3, #10, #6, #1, #8, #2, #4.
## Входные Данные
Ввод содержит целые числа N, M и S1 (1 ≤ N ≤ 106, 1 ≤ M, S1 ≤ N) — соответственно количество мест в кинотеатре, количество зрителей и номер места, которое занял первый зритель.
## Выходные Данные
Вычислите сумму (где Si — номер места, занятого i-м зрителем) и выведите остаток от деления этой суммы на 1000000007.
## Примеры
Входные данные10 7 3Выходные данные125Входные данные40 20 20Выходные данные3421
## Примечание
В первом примере зрители занимают следующие места: #3, #10, #6, #1, #8, #2, #4.
[samples]
**Definitions**
Let $ N \in \mathbb{Z}^+ $ be the number of seats in a row, labeled $ 1 $ to $ N $.
Let $ M \in \mathbb{Z}^+ $ be the number of viewers, with $ M \leq N $.
Let $ S_1 \in \{1, \dots, N\} $ be the seat chosen by the first viewer.
Let $ S_i \in \{1, \dots, N\} $ be the seat chosen by the $ i $-th viewer ($ i \geq 2 $), selected to maximize the minimum distance to any occupied seat, with ties broken by choosing the smallest index.
**Constraints**
1. $ 1 \leq N \leq 10^6 $
2. $ 1 \leq M \leq N $
3. $ 1 \leq S_1 \leq N $
**Objective**
Compute $ \sum_{i=1}^M S_i \mod 1000000007 $.