#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100005;
const int MOD = 1000000007;
int x[3], y[3];
pair<int, int> p;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  for (int i = (0); i <= (2); i++) cin >> x[i] >> y[i];
  int ans = INT_MAX;
  for (int i = (0); i <= (1000); i++) {
    for (int j = (0); j <= (1000); j++) {
      int cur = 0;
      for (int k = (0); k <= (2); k++) cur += abs(x[k] - i) + abs(y[k] - j);
      if (cur < ans) {
        ans = cur;
        p = pair<int, int>(i, j);
      }
    }
  }
  int cnt = 0;
  ans++;
  cout << ans << "\n";
  for (int k = (0); k <= (2); k++) {
    if (p.first <= x[k]) {
      for (int i = (p.first); i <= (x[k]); i++)
        if (pair<int, int>(i, y[k]) != p) {
          cout << i << ' ' << y[k] << "\n";
          cnt++;
        }
    } else {
      for (int i = (x[k]); i <= (p.first); i++)
        if (pair<int, int>(i, y[k]) != p) {
          cout << i << ' ' << y[k] << "\n";
          cnt++;
        }
    }
    if (p.second <= y[k]) {
      for (int j = (p.second); j <= (y[k] - 1); j++)
        if (pair<int, int>(p.first, j) != p) {
          cout << p.first << ' ' << j << "\n";
          cnt++;
        }
    } else {
      for (int j = (y[k] + 1); j <= (p.second); j++)
        if (pair<int, int>(p.first, j) != p) {
          cout << p.first << ' ' << j << "\n";
          cnt++;
        }
    }
  }
  cout << p.first << ' ' << p.second << "\n";
  assert(cnt == ans - 1);
}
