Випадкова прогулянка
Армія Мавп, Що Підкидають Монети (АМПМ), спеціалізується на створенні випадковості. Якісні випадкові числа є важливими для багатьох сфер, таких як криптографія, онлайн-гемблінг, рандомізовані алгоритми та вирішення задач в останні хвилини програмних змагань.
Нещодавно один з найкращих мавп вийшов на пенсію. Але перед цим він розробив новий, більш економічний метод генерації випадковості, ніж безпосереднє використання випадковості, створеної мавпами, що підкидають монети. Цей метод починається з вибору неорієнтованого графа з 2^n вузлами, позначеними від 0 до 2^n - 1. Щоб згенерувати k випадкових n-бітних чисел, мавпи підкидають n монет, щоб визначити початковий вузол у графі. Цей номер вузла стає першим числом, що виводиться. Далі мавпи вибирають випадкове ребро з цього вузла і переходять до вузла, з яким це ребро з'єднує. Цей новий вузол стає другим випадковим числом, що виводиться. Потім вони знову вибирають випадкове ребро з цього вузла (можливо, повертаючись до попереднього вузла), переходять по ньому і виводять номер нового вузла. Цей процес триває, поки не буде виведено k чисел.
Під час експериментів АМПМ помітила, що різні графи дають різні розподіли виходу, деякі з яких не дуже випадкові. Тому вони звернулися до вас за допомогою у тестуванні графів, щоб перевірити, чи є випадковість достатньо якісною для продажу.
Граф вважається хорошим, якщо для кожного з n бітів у кожному з k згенерованих чисел ймовірність того, що цей біт буде 1, перевищує 25% і не перевищує 75%.
Вхідні дані
Кілька наборів даних. Кожен набір починається з рядка, що містить три числа k, n, e, розділені пробілами, де k — це кількість n-бітних чисел, які потрібно згенерувати, а e — кількість ребер у графі (1 ≤ k ≤ 100, 1 ≤ n ≤ 10 і 1 ≤ e ≤ 2000). Наступні e рядків містять по два цілі числа, розділені пробілом, v_1, v_2, де 0 ≤ v_1, v_2 < 2^n і v_1 ≠ v_2. Ребра неорієнтовані, і кожен вузол має принаймні одне ребро. Можуть бути кілька ребер між однією і тією ж парою вузлів.
Останній тестовий випадок буде позначений рядком з k = n = e = 0, який не слід обробляти.
Вихідні дані
Для кожного вхідного випадку виведіть один рядок зі словом Yes, якщо граф хороший, і No в іншому випадку.