#include #define rep(i,n) for(int i = 0; i < (n); ++i) #define srep(i,s,t) for (int i = s; i < t; ++i) #define drep(i,n) for(int i = (n)-1; i >= 0; --i) using namespace std; typedef long long int ll; typedef pair P; #define yn {puts("Yes");}else{puts("No");} #define MAX_N 200005 int main() { ll n, k; cin >> n >> k; ll sum = n * (n + 1) / 2; int flag = 0; if(n % k == 0 && sum % k == 0)flag = 1; if(flag)yn; if(flag){ rep(i,k){ rep(j,n/k){ cout << j * k + (i + j) % k + 1; if(j != n/k - 1)cout << ' '; else cout << endl; } } } return 0; }