#include using namespace std; #define repd(i,a,b) for (int i=(a);i<(b);i++) #define rep(i,n) repd(i,0,n) #define all(x) (x).begin(),(x).end() #define SIZE(x) ll(x.size()) template inline bool chmin(T& a, T b) { if (a > b) { a = b; return true; } return false; } template inline bool chmax(T& a, T b) { if (a < b) { a = b; return true; } return false; } typedef long long ll; const long long INF = 1LL << 60; const long long MOD = 1000000007; typedef pair P; int main() { int N; cin >> N; int t = N; int cnt = 0; while (t) { if (t & 1) cnt++; t = t >> 1; } if (cnt <= 1) { cout << "-1 -1 -1" << endl; return 0; } int a, b = 0, c = 0; a = N; int ct = 1; while (ct <= N) { if (N & ct) { if (b == 0) { b = ct; } else { c += ct; } } ct <<= 1; } cout << a << " " << b << " " << c << endl; return 0; }