#include <bits/stdc++.h>
using namespace std;
const int N = 1000 + 3;
int n, tot, last;
bool G[N][N];
int ansu[N << 1], ansv[N << 1];
inline void read() {
  for (int i = 0; i < n - 3; i++) {
    int u, v;
    scanf("%d%d", &u, &v);
    u--;
    v--;
    G[u][v] = G[v][u] = true;
  }
}
int main() {
  tot = 0;
  scanf("%d", &n);
  read();
  for (int i = 1; i < n; i++) {
    for (int j = n - 1; j > i; j--)
      if (G[i][j]) {
        ansu[tot] = i;
        ansv[tot++] = j;
      }
  }
  last = tot;
  memset(G, 0, sizeof(G));
  read();
  for (int i = 1; i < n; i++) {
    for (int j = n - 1; j > i; j--)
      if (G[i][j]) {
        for (int k = j - 1; k > i; k--) {
          if (k != i + 1 && !G[i][k]) continue;
          ansu[tot] = 0;
          ansv[tot++] = k;
          break;
        }
      }
  }
  printf("%d\n", tot);
  for (int i = 0; i < last; i++) printf("%d %d\n", ansu[i] + 1, ansv[i] + 1);
  for (int i = tot - 1; i >= last; i--)
    printf("%d %d\n", ansu[i] + 1, ansv[i] + 1);
  return 0;
}
