#include <bits/stdc++.h>
using namespace std;
const int Max = 1e5 + 10;
struct aaa {
  int x, y;
} a[Max], ans[Max];
int cmp(aaa a, aaa b) {
  if (a.x == b.x) return a.y < b.y;
  return a.x < b.x;
}
int main() {
  int cnt = 0;
  for (int i = 0; i < 3; i++) scanf("%d%d", &a[i].x, &a[i].y);
  sort(a, a + 3, cmp);
  int miny = min(a[0].y, min(a[1].y, a[2].y)),
      maxy = max(a[0].y, max(a[1].y, a[2].y));
  for (int i = a[0].x; i < a[1].x; i++) {
    ans[cnt].x = i;
    ans[cnt++].y = a[0].y;
  }
  for (int i = miny; i <= maxy; i++) {
    ans[cnt].x = a[1].x;
    ans[cnt++].y = i;
  }
  for (int i = a[1].x + 1; i <= a[2].x; i++) {
    ans[cnt].x = i;
    ans[cnt++].y = a[2].y;
  }
  printf("%d\n", cnt);
  for (int i = 0; i < cnt; i++) {
    printf("%d %d\n", ans[i].x, ans[i].y);
  }
  return 0;
}
