Числовий рядок, є прекрасним, якщо його можна роздiлити на послiдовнiсть з двох чи бiльше натуральних чисел \(a_1, a_2, ..., a_n\), якi вiдповiдають наступним умовам:
\(a_i - a_{i−1} = 1\) для будь-якого \(1 < i \le n\) (тобто, кожен елемент у послiдовностi бiльший на 1, нiж попереднiй).
\(a_i\) не мiстить провiдних нулiв. (не може бути такого розбиття 02, 03)
Послiдовнiсть цифр не можна змiнювати неможливо змiнити.
На схемi нижче зображенi декiлька прекрасних рядкiв:
Ваша програма повинна давати вiдповiдi на запити: чи є прекрасним черговий рядок?
Формат вхiдних даних
Перший рядок мiстить цiле число \(q\) \((1 \le q \le 10)\) - кiлькiсть запитiв.
Наступнi \(q\) рядкiв мiстять один запит - числовий рядок \(S\) \((1 \le |S| \le 32)\), який мiстить лише цифри 0..9
Формат вихiдних даних
Якщо рядок прекрасний, то вивести ’Yes’ та найменше перше число послiдовностi \(a_1\); в iншому випадку вивести ’No’
Приклад вхідних даних
7
1234
91011
99100
101103
010203
13
1
Приклад вихідних даних
YES 1
YES 9
YES 99
NO
NO
NO
NO
Коментарі