#include <bits/stdc++.h>
using namespace std;
bool prime(int a) {
  for (int i = 2; i * i <= a; i++) {
    if (a % i == 0) {
      return false;
    }
  }
  return true;
}
int nextprime(int a) {
  if (prime(a)) {
    return a;
  }
  return nextprime(a + 1);
}
int main() {
  long long n, k, primo, index, actual;
  actual = 1;
  index = 1;
  cin >> n >> k;
  primo = nextprime(n);
  cout << primo << " " << primo << endl;
  for (int i = 1; i < n - 1; i++) {
    cout << i << " " << i + 1 << " " << 1 << endl;
  }
  primo = primo - (n - 2);
  cout << n - 1 << " " << n << " " << primo << endl;
  k = k - (n - 1);
  while (k > 0) {
    index++;
    if (index == actual || index == actual + 1) {
      continue;
    }
    cout << index << " " << actual << " " << 1000000000 << endl;
    k--;
    if (index == n) {
      index = actual + 1;
      actual++;
    }
  }
  return 0;
}
