B. Разбиения на множества
ограничение по времени на тест
5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Вам даны два числа n и k, нужно вывести все разбиения n элементного множества на k множеств. Строго следуйте формату выходных данных при выводе разбиений.

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

В первой строке записаны два целых числа n и k (1 ≤ k ≤ n ≤ 11).

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

Выведите все разбиения в лексикографическом порядке. Элементы в множествах разбиения сортируйте в порядке возрастания. Сами множества в разбиениях сортируйте в лексикографическом порядке. Не выводите никаких лишних пробелов, строго следуйте формату, указанному в тестовых примерах.

Примеры
Входные данные
1 1
Выходные данные
[1]
Входные данные
3 2
Выходные данные
[1][2,3]
[1,2][3]
[1,3][2]
Входные данные
4 3
Выходные данные
[1][2][3,4]
[1][2,3][4]
[1][2,4][3]
[1,2][3][4]
[1,3][2][4]
[1,4][2][3]
Входные данные
5 3
Выходные данные
[1][2][3,4,5]
[1][2,3][4,5]
[1][2,3,4][5]
[1][2,3,5][4]
[1][2,4][3,5]
[1][2,4,5][3]
[1][2,5][3,4]
[1,2][3][4,5]
[1,2][3,4][5]
[1,2][3,5][4]
[1,2,3][4][5]
[1,2,4][3][5]
[1,2,5][3][4]
[1,3][2][4,5]
[1,3][2,4][5]
[1,3][2,5][4]
[1,3,4][2][5]
[1,3,5][2][4]
[1,4][2][3,5]
[1,4][2,3][5]
[1,4][2,5][3]
[1,4,5][2][3]
[1,5][2][3,4]
[1,5][2,3][4]
[1,5][2,4][3]