#include <bits/stdc++.h>
using namespace std;
int n, ans, e[1005][1005];
pair<int, int> flip(int a, int b, bool inv) {
  int x = 0, y;
  for (int i = 1; i < n; i++)
    if (e[a][i] && e[b][i]) {
      y = i;
      break;
    }
  e[a][b] = e[b][a] = 0;
  e[x][y] = e[y][x] = 1;
  return inv ? make_pair(x, y) : make_pair(a, b);
}
vector<pair<int, int> > solve(bool inv) {
  vector<pair<int, int> > vec;
  memset(e, 0, sizeof(e));
  for (int i = 1, u, v; i <= n - 3; i++)
    scanf("%d%d", &u, &v), e[--u][--v] = e[v][u] = 1;
  for (int i = 0; i < n; i++) e[i][(i + 1) % n] = e[(i + 1) % n][i] = 1;
  for (int i = 1, j; i < n;) {
    if (e[0][i]) {
      i++;
      continue;
    }
    for (j = i + 1; !e[0][j]; j++)
      ;
    vec.push_back(flip(i - 1, j, inv));
  }
  return vec;
}
int main() {
  scanf("%d", &n);
  vector<pair<int, int> > a = solve(0), b = solve(1);
  printf("%d\n", a.size() + b.size());
  for (int i = 0; i < a.size(); i++)
    printf("%d %d\n", a[i].first + 1, a[i].second + 1);
  for (int i = b.size() - 1; i >= 0; i--)
    printf("%d %d\n", b[i].first + 1, b[i].second + 1);
  return 0;
}
