Рассадка зверей

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

Сегодня Колобок созвал всех волков и лис к себе в гости на чаепитие. Чаепитие пройдет за круглым столом, за которым всего $n$ мест. Колобок хочет рассадить зверей по-особенному --- так, чтобы волки не сидели только с волками, а лисы только с лисами. Поэтому для каждого места он записал одно целое число --- сколько лис должно сидеть на расстоянии не более $d$ от этого места, включая это место.

Два места находятся на расстоянии не более $d$, если между ними встречаются не более $d-1$ места при движении по или против часовой стрелки от одного к другому. Таким образом, для заданного места всего существует $2d+1$ место, находящееся на расстоянии не более $d$ от него.

Теперь он хочет придумать какую-нибудь рассадку зверей, удовлетворяющую этим ограничениям.

입력

В первой строке находятся два натуральных числа $n$, $d$ ($3 \le n \le 10^5$, $3 \le 2 d + 1 \le n$) --- количество мест за круглым столом и расстояние $d$.

В следующей строке находятся $n$ неотрицательных целых чисел $a_i$ ($0 \le a_i \le 2 d + 1$) --- количество лис на расстоянии не более $d$ от этого места, включая это место. Информация о местах перечислена в порядке их следования по кругу.

출력

Если решения не существует, выведите <<NO>>, иначе в первой строке выведите <<YES>>, а в следующей $n$ чисел: $1$ в том случае, если на этом месте сидит лиса, и $0$, если на этом месте сидит волк. Если ответов несколько, разрешается вывести любой.