#include <bits/stdc++.h>
using namespace std;
struct nd {
  int x, y;
} a[5];
struct ndd {
  int x, y;
} ans[100005];
bool cmp(nd a, nd b) { return a.x < b.x; }
int main() {
  for (int i = 1; i <= 3; i++) {
    scanf("%d%d", &a[i].x, &a[i].y);
  }
  sort(a + 1, a + 4, cmp);
  int t = 0;
  for (int i = min(a[1].y, min(a[2].y, a[3].y));
       i <= max(a[1].y, max(a[2].y, a[3].y)); i++) {
    ans[++t].x = a[2].x;
    ans[t].y = i;
  }
  for (int i = a[1].x; i < a[2].x; i++) {
    ans[++t].x = i;
    ans[t].y = a[1].y;
  }
  for (int i = a[2].x + 1; i <= a[3].x; i++) {
    ans[++t].x = i;
    ans[t].y = a[3].y;
  }
  printf("%d\n", t);
  for (int i = 1; i <= t; i++) {
    printf("%d %d\n", ans[i].x, ans[i].y);
  }
}
