Представьте, что вы — квадратная шоколадка размера N × N. И у квадратных шоколадок проблем ничуть не меньше, чем у людей!
Сначала вам позвонили с неизвестного номера и попросили прийти в холодильник в 15:00 — там вам покажут, кто разбил яйца. Потом вам позвонила сахарница и сообщила, что если вы не придёте в 15:00 на кухонный стол, то между вами всё кончено. Чуть позже вам позвонили ваши чёрные братья — они попали в засаду, и им нужна ваша помощь в 15:00 около миксера...
В этот день вы получили k звонков. Каждый раз кому-то было жизненно необходимо ваше присутствие в определённом месте в 15:00; к тому же, все эти места оказались попарно различны. Вы очень приличная шоколадка, поэтому даже мысль о том, что вы опоздаете на какую-либо встречу или вообще пропустите её, для вас совершенно неприемлема.
К счастью, на каждом месте не обязаны присутствовать вы целиком; достаточно лишь вашей части — некоторой связной области из долек. За одно действие вы можете разломить ровно один цельный прямоугольный кусок себя (или вашей уже отломленной части) на два прямоугольных куска. Разламывать себя вы можете только по линиям, проходящим между дольками: по горизонтали или по вертикали.
Так же вы не хотите, чтобы кто-то из ваших друзей, позвонивших вам, посчитал себя обделённым. Поэтому вы должны разделить себя так, чтобы каждая часть состояла из одинакового количества долек, причём разделить себя вы должны полностью, т.е. не должно остаться неиспользуемых кусочков. Сможете ли вы оказаться в каждом месте и при этом не обидеть своих друзей?
Входные данные состоят из двух целых чисел N и k (1 ≤ N, k ≤ 1000) — размер вашей стороны в дольках и количество полученных просьб о встрече.
Выведите слово YES, если вы сможете побывать на всех встречах и не обидеть друзей, иначе выведите NO.
2 2
YES
3 4
NO
| Название |
|---|


