OwenOwl 不学车也不删库

题目背景

神 mcfx 和神 ComeIntoPower 没事就瞎编题目背景。OwenOwl 去问基佬 zcysky 他们这么做的原因,基佬 zcysky 却这样答复: ![](https://cdn.luogu.com.cn/upload/pic/54751.png) OwenOwl 非常郁闷,于是他有一天找到了神 J,让神 J 造了 20010910 个指针把他们三个指到阿塞拜疆去陪 sunset 阿克了。 他们三个游览阿塞拜疆的时候,OwenOwl 就把车砸了,库恢复了。 但是因为神 mcfx 和神 ComeIntoPower 之前以 OwenOwl 这个 ID 出了太多毒瘤题,OwenOwl 早就风评被害了。为了证明毒瘤的是他俩,不是自己,OwenOwl 就出了道签到题。

题目描述

设 $p$ 是一个质数。 你有一个 $p^k$ 个点的无向完全图(任意两个点之间有一条无向边),点的标号是 $0$ 到 $p^k-1$。 现在你需要从中找出一些 $p$ 个点的完全图,使得原图中每条边属于且恰好属于其中一个完全图。 很显然你需要找出的完全图的个数是 $\frac{p^k(p^k-1)/2}{p(p-1)/2} $,可以发现这个式子一定是整数

输入输出格式

输入格式


一行两个正整数 $p,k$。

输出格式


如果无解,输出一行 `NO`。 否则输出一行 `YES`,接下来输出 $\frac{p^k(p^k-1)/2}{p(p-1)/2} $ 行,每行 $p$ 个数表示你找出的这个完全图的点的编号。 按任意顺序输出任意一种方案即可。

输入输出样例

输入样例 #1

2 2

输出样例 #1

YES
0 1
2 0
3 0
1 2
1 3
3 2

输入样例 #2

3 1

输出样例 #2

YES
0 1 2

说明

对于 $10\%$ 的数据,$k \le 1$; 对于 $50\%$ 的数据,$k \le 2$; 另有 $20\%$ 的数据,$p = 2$; 对于 $100\%$ 的数据,$k$ 是正整数,$p$ 是质数,$2 \le p^k \le 2000$。 另外,保证输出总量不超过 2MB,但仍请注意控制输出所花费的时间。