#include <bits/stdc++.h>
using namespace std;
bool isFib(int x, vector<int>& fib) {
  for (int i = 0; i < fib.size() - 1; i++) {
    if (fib.at(i) == x) return true;
  }
  return false;
}
int main() {
  vector<int> fib;
  long long int prev = 1;
  for (long long int i = 0; i < 1000000000;) {
    fib.push_back(i);
    i += prev;
    prev = i - prev;
  }
  int n;
  cin >> n;
  for (int a = 0; a < fib.size() - 1; a++) {
    int b = n - fib.at(a);
    if (isFib(b, fib)) {
      cout << 0 << " " << fib.at(a) << " " << b;
      return 0;
    }
  }
  cout << "I'm too stupid to solve this problem";
  return 0;
}
