#include <bits/stdc++.h>
using namespace std;
long long Fibo[60];
int Binary_search(int left, int right, int item) {
  int mid = (left + right) / 2;
  if (Fibo[mid] == item) return mid;
  if (left > right && Fibo[mid] != item) return -1;
  if (Fibo[mid] >= item)
    Binary_search(left, mid - 1, item);
  else
    Binary_search(mid + 1, right, item);
}
int main() {
  Fibo[0] = 0;
  Fibo[1] = 1;
  long long n, f = 0, x, a;
  cin >> n;
  if (n == 0)
    cout << 0 << " " << 0 << " " << 0 << endl;
  else if (n == 2)
    cout << 1 << " " << 1 << " " << 0 << endl;
  else if (n == 3)
    cout << 1 << " " << 1 << " " << 1 << endl;
  else {
    for (int i = 2; i <= 60; i++) Fibo[i] = Fibo[i - 1] + Fibo[i - 2];
    int index = Binary_search(0, 60, n);
    cout << Fibo[index - 1] << " " << Fibo[index - 3] << " " << Fibo[index - 4]
         << endl;
  }
}
