H. Саратовская дилемма
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Каждый год лучшие команды Самарского университета ездят в Саратов на четвертьфинал чемпионата мира по программированию ICPC. Как правило, вся делегация снимает одну большую квартиру, тут-то и возникает дилемма.

В квартире есть $$$a$$$ односпальных и $$$b$$$ двуспальных кроватей. В делегации $$$n$$$ человек, и среди них есть люди, которые согласны спать с кем-либо вместе на двуспальной кровати, а есть люди, которые против этого.

Зная эти данные, распределите спальные места среди участников делегации.

Входные данные

В первой строке даны три целых числа $$$n$$$, $$$a$$$ и $$$b$$$ ($$$1 \le n \le 200000, 0 \le a+b \le 200000$$$) — количество человек, а также количество односпальных и двуспальных кроватей.

Вторая строка содержит $$$n$$$ символов «0» и «1» — согласен ли $$$i$$$-й человек спать с кем-то вместе на двуспальной кровати.

Выходные данные

В первой строке выведите «YES» или «NO», в зависимости от того, можно ли распределить людей по спальным местам или нет.

В случае положительного ответа выведите еще $$$a+b$$$ строк. Первые $$$a$$$ строк должны содержать по одному числу — номеру человека, который будет спать на соответствующей односпальной кровати (или 0, если никто не будет спать на этой кровати). Следующие $$$b$$$ строк должны содержать по два числа — номера людей, которые будут спать вдвоем на соответствующей двуспальной кровати (если одно или оба спальных места останутся свободными, для этих мест должно быть выведено число 0).

Если возможных ответов несколько, разрешается вывести любой из них.

Примеры
Входные данные
7 3 2
1111000
Выходные данные
YES
5
6
7
1 2
3 4
Входные данные
7 3 2
1011000
Выходные данные
NO
Входные данные
5 3 2
10110
Выходные данные
YES
0
1
2
3 4
5 0