#include <bits/stdc++.h>
#pragma GCC optimize("Ofast")
using namespace std;
long long power(long long b, long long e, long long m) {
  if (e == 0) return 1;
  if (e % 2)
    return b * power(b * b % m, (e - 1) / 2, m) % m;
  else
    return power(b * b % m, e / 2, m);
}
long long power(long long b, long long e) {
  if (e == 0) return 1;
  if (e % 2)
    return b * power(b * b, (e - 1) / 2);
  else
    return power(b * b, e / 2);
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long n, k;
  cin >> n >> k;
  if (n * (n - 1) / 2 <= k)
    cout << "no solution";
  else {
    for (auto i = 1; i <= n; i++) {
      cout << i << " " << i + (n + 1) * i << "\n";
    }
  }
  return 0;
}
