#include <bits/stdc++.h>
using namespace std;
int V, E;
vector<int> v[100005];
vector<pair<int, int> > ans;
bool LINK(int a, int b) {
  for (int i = 0; i < v[a].size(); i++) {
    if (v[a][i] == b) return true;
  }
  return false;
}
int id[100005];
bool ANS() {
  for (int i = 0; i < V; i++) id[i] = i + 1;
  random_shuffle(id, id + V);
  id[V] = id[0];
  ans.clear();
  for (int i = 0; i < V; i++) {
    if (!LINK(id[i], id[i + 1]))
      ans.push_back(pair<int, int>(id[i], id[i + 1]));
  }
  if (ans.size() < E) return false;
  for (int i = 0; i < E; i++) {
    printf("%d %d\n", ans[i].first, ans[i].second);
  }
  return true;
}
int main() {
  scanf("%d%d", &V, &E);
  for (int i = 0; i < E; i++) {
    int a, b;
    scanf("%d%d", &a, &b);
    v[a].push_back(b);
    v[b].push_back(a);
  }
  for (int i = 0; i < 100; i++) {
    if (ANS()) return 0;
  }
  printf("-1\n");
  return 0;
}
