#include <bits/stdc++.h>
using namespace std;
map<string, int> mapa;
int v[100100];
int s1[100100], s2[100100];
int main() {
  long long n, m, v;
  cin >> n >> m >> v;
  if (m < n - 1 || m > 1 + (n - 1) * (n - 2) / 2)
    cout << -1 << endl;
  else {
    int w = 1;
    if (w == v) w++;
    cout << v << " " << w << endl;
    for (int i = 1; i < n + 1; i++) {
      if (i == v || i == w) continue;
      cout << v << " " << i << endl;
    }
    m -= n - 1;
    for (int i = 1; i < n + 1; i++)
      for (int j = i + 1; j < n + 1; j++) {
        if (m == 0) break;
        if (i == w || i == v || j == w || j == v) continue;
        cout << i << " " << j << endl;
        m--;
      }
  }
  return 0;
}
