#include <bits/stdc++.h>
using namespace std;
set<pair<int, int> > second;
int arr[(int)(1e5) + 30];
int main() {
  int n, m;
  int u, v;
  cin >> n >> m;
  for (int i = 0; i < m; i++) {
    cin >> u >> v;
    second.insert(make_pair(u, v));
    second.insert(make_pair(v, u));
  }
  for (int i = 0; i < n; i++) arr[i] = i + 1;
  int limit = 1000;
  while (limit--) {
    random_shuffle(arr, arr + n);
    arr[n] = arr[0];
    for (int i = 0; i < m; i++) {
      if (second.find(make_pair(arr[i], arr[i + 1])) != second.end()) goto re;
    }
    for (int i = 0; i < m; i++) cout << arr[i] << " " << arr[i + 1] << endl;
    return 0;
  re:;
  }
  puts("-1");
}
