#include <bits/stdc++.h>
using namespace std;
class TaskB {
 public:
  long long dist(pair<long long, long long> f, pair<long long, long long> s) {
    return (f.first - s.first) * (f.first - s.first) +
           (f.second - s.second) * (f.second - s.second);
  }
  void solve(std::istream& cin, std::ostream& cout) {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    vector<pair<long long, long long> > v(3);
    set<pair<long long, long long> > st;
    for (long long i = 0; i < 3; i++) {
      cin >> v[i].first >> v[i].second;
    }
    vector<pair<long long, long long> > ans;
    if (1 || dist(v[1], v[2]) <= dist(v[0], v[1]) + dist(v[0], v[2])) {
      ans.push_back({v[1].first + v[2].first - v[0].first,
                     v[1].second + v[2].second - v[0].second});
    }
    if (1 || dist(v[0], v[2]) <= dist(v[2], v[1]) + dist(v[1], v[0])) {
      ans.push_back({v[0].first + v[2].first - v[1].first,
                     v[0].second + v[2].second - v[1].second});
    }
    if (1 || dist(v[1], v[0]) <= dist(v[2], v[1]) + dist(v[0], v[2])) {
      ans.push_back({v[1].first + v[0].first - v[2].first,
                     v[1].second + v[0].second - v[2].second});
    }
    cout << ans.size() << endl;
    for (long long i = 0; i < ans.size(); i++)
      cout << ans[i].first << ' ' << ans[i].second << endl;
  }
};
int main() {
  TaskB solver;
  std::istream& in(std::cin);
  std::ostream& out(std::cout);
  solver.solve(in, out);
  return 0;
}
