#include <bits/stdc++.h>   using namespace std;   void solve() {     vector<pair<long long, long long>> ar(4);     for (long long i = 1; i <= 3; i++) {       long long a, b;       cin >> a >> b;       ar[i] = {a, b};     }     sort(ar.begin() + 1, ar.end());     set<pair<long long, long long>> ans;     for (long long i = ar[1].first; i <= ar[2].first; i++) {       ans.insert({i, ar[1].second});     }     long long dy = 1;     if (ar[2].second < ar[1].second) dy = -1;     for (long long i = ar[1].second; i != ar[2].second; i += dy) {       ans.insert({ar[2].first, i});     }     ans.insert({ar[2].first, ar[2].second});     long long low = ar[1].second, high = ar[2].second;     long long temp = min(high, low);     high = max(high, low);     low = temp;     if (ar[3].second >= low && ar[3].second <= high) {       for (long long i = ar[3].first; i >= ar[2].first; i--) {         ans.insert({i, ar[3].second});       }     } else if (ar[3].second > high) {       for (long long i = ar[3].first; i >= ar[2].first; i--) {         ans.insert({i, ar[3].second});       }       for (long long i = ar[3].second; i > high; i--) {         ans.insert({ar[2].first, i});       }     } else {       for (long long i = ar[3].first; i >= ar[2].first; i--) {         ans.insert({i, ar[3].second});       }       for (long long i = ar[3].second; i < low; i++) {         ans.insert({ar[2].first, i});       }     }     cout << signed(ans.size()) <<   n ;     for (auto i : ans) cout << i.first <<     << i.second <<   n ;   }   int main() {     ios_base::sync_with_stdio(0);     cin.tie(0);     cout.tie(0);     ;     long long t = 1;     while (t--) solve();     return 0;   }   