I. Андрей и ролики с животными
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Андрей подобрал $$$N$$$ роликов со смешными животными. Каждый ролик описывается заглавными латинскими буквами, которые обозначают фрагменты с разными животными.

Например: CDTPPPD обозначает ролик, в котором сначала показывается фрагмент с котиками (Сat), затем с собаками (Dog), потом идут черепашки (Turtle) и т.д.

Длина каждого фрагмента 10 секунд.

Андрей хочет потратить на просмотр роликов про животных ровно $$$M$$$ минут. Ролики можно смотреть в любом порядке, но если Андрей начинает смотреть ролик, то досматривает его до конца. Каждый ролик можно посмотреть только один раз. Еще одно пожелание для плейлиста — последний просмотренный фрагмент последнего ролика должен быть обязательно про котика.

Помогите Андрею составить плейлист вечернего просмотра роликов, так чтобы выполнялись все описанные выше условия.

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

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

В первой строке через пробел даны два целых числа $$$N$$$ $$$(1 \le N \le 2000)$$$ и $$$M$$$ $$$(1 \le M \le 1000)$$$ — количество роликов и время, которое Андрей готов выделить на просмотр соответственно.

В каждой из следующих $$$N$$$ строк идет описание очередного видео в формате строки, состоящей из заглавных английских букв.

Суммарная длина строк, описывающих ролики, не превышает $$$30000$$$ букв.

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

Если возможно смотреть ролики ровно $$$M$$$ минут и при этом, закончить просмотр на видео с котиком, в первой строке выведите «YES», в следующей число $$$k$$$ — количество роликов, которые будет смотреть Андрей. В третьей строке через пробел выведите $$$k$$$ различных чисел — номера этих роликов (ролики нумеруются в порядке следования во входных данных). Иначе, выведите «NO».

Примеры
Входные данные
5 5
DDDDDDDDDDDD
PDPDPDCDCP
PCCC
PPDCDDTC
TC
Выходные данные
YES
3
1 2 4 
Входные данные
5 5
DDDDDDDDDDDD
PDPDPDCDCP
PCCC
PPDCDDTD
TC
Выходные данные
NO