Задача D. Разница
Ограничение по времени | Ограничение по памяти |
---|---|
1 секунда | 256 мегабайт |
У вас есть мультимножества . Разница мультимножества и множества состоит в том, что в мультимножестве одно и то же число может содержаться несколько раз, а в множестве — только один раз. Изначально, в мультимножестве содержатся все целые числа от до по одному разу. За одну операцию вы можете убрать два числа и из мультимножества и добавить их абсолютную разницу | - |. Вы хотите выполнить некоторые операции так, чтобы в мультимножестве было только одно число .
Формат входного файла
В первой строке входных данных задается одно целое число () — количество тестов. В следующих строках задаются по два целых числа и () — описание теста. Сумма всех по всем тестам не превышает .
Формат выходного файла
Для каждого теста выведите "NO" (без кавычек), если невозможно получить . Иначе, для этого теста выведите "YES" (без кавычек) и в следующих - строках выведите операции в порядке их выполнения. Для каждой операции выведите два целых числа и числа, которые выбираются с текущего мультимножества.
Примеры
Вход
2
5 1
5 0
Выход
YES
2 3
4 5
1 1
1 0
NO