#include <bits/stdc++.h>
using namespace std;
int n, f[10][10], m[10][10];
vector<int> a;
void init() {
  f[1][1] = m[1][1] = 1;
  f[1][2] = m[1][2] = 1;
  f[2][1] = m[2][1] = 1;
  f[2][2] = m[2][2] = 0;
}
void mul() {
  int x, y, z, t;
  x = f[1][1] * m[1][1] + f[1][2] * m[2][1];
  y = f[1][1] * m[1][2] + f[1][2] * m[2][2];
  z = f[2][1] * m[1][1] + f[2][2] * m[2][1];
  t = f[2][1] * m[1][2] + f[2][2] * m[2][2];
  f[1][1] = x;
  f[1][2] = y;
  f[2][1] = z;
  f[2][2] = t;
}
void process() {
  a.push_back(0);
  a.push_back(1);
  init();
  while (f[1][1] != n) {
    a.push_back(f[1][1]);
    mul();
  }
  cout << a[a.size() - 1] << " " << a[a.size() - 3] << " " << a[a.size() - 4];
}
int main() {
  scanf("%d", &n);
  if (n > 1) {
    if (n == 2)
      cout << "1 1 0";
    else
      process();
  } else {
    if (n != 0)
      cout << "1 0 0";
    else
      cout << "0 0 0";
  }
  return 0;
}
