#include <bits/stdc++.h>
using namespace std;
set<pair<int, int> > used;
int main() {
  int n, m;
  scanf("%d %d", &n, &m);
  for (int i = 0; i < m; i++) {
    int a, b;
    scanf("%d %d", &a, &b);
    used.insert(make_pair(a, b));
    used.insert(make_pair(b, a));
  }
  vector<int> v;
  for (int i = 1; i <= n; i++) v.push_back(i);
  clock_t s = clock();
  while (double(clock() - s) / CLOCKS_PER_SEC <= 2.8) {
    random_shuffle(v.begin(), v.end());
    vector<pair<int, int> > ans;
    for (int i = 0; i < n; i++) {
      if (used.find(make_pair(v[i], v[(i + 1) % n])) == used.end())
        ans.push_back(make_pair(v[i], v[(i + 1) % n]));
      if (ans.size() == m) {
        for (int j = 0; j < m; j++)
          printf("%d %d\n", ans[j].first, ans[j].second);
        return (0);
      }
    }
  }
  printf("-1\n");
  return (0);
}
