#include <bits/stdc++.h>
using namespace std;
map<pair<int, int>, int> p;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  srand(time(0));
  int n, k, ans = 1e9, x, y;
  int ax, ay, bx, by, cx, cy;
  cin >> ax >> ay >> bx >> by >> cx >> cy;
  for (int i = 0; i <= 1000; i++) {
    for (int j = 0; j <= 1000; j++) {
      if (ans > abs(ax - i) + abs(ay - j) + abs(bx - i) + abs(by - j) +
                    abs(cx - i) + abs(cy - j) + 1) {
        ans = abs(ax - i) + abs(ay - j) + abs(bx - i) + abs(by - j) +
              abs(cx - i) + abs(cy - j) + 1;
        x = i;
        y = j;
      }
    }
  }
  cout << ans << endl;
  cout << x << ' ' << y << endl;
  int rx = x, ry = y;
  while (rx != ax || ry != ay) {
    if (rx < ax) {
      rx++;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    } else if (rx > ax) {
      rx--;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    }
    if (ry < ay) {
      ry++;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    } else if (ry > ay) {
      ry--;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    }
  }
  rx = x;
  ry = y;
  while (rx != bx || ry != by) {
    if (rx < bx) {
      rx++;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    } else if (rx > bx) {
      rx--;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    }
    if (ry < by) {
      ry++;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    } else if (ry > by) {
      ry--;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    }
  }
  rx = x;
  ry = y;
  while (rx != cx || ry != cy) {
    if (rx < cx) {
      rx++;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    } else if (rx > cx) {
      rx--;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    }
    if (ry < cy) {
      ry++;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    } else if (ry > cy) {
      ry--;
      if (p[{rx, ry}] == 0) {
        cout << rx << ' ' << ry << endl;
        p[{rx, ry}] = 1;
      }
    }
  }
  return 0;
}
