#include<iostream>
#include<unordered_map>
#include<cmath>
using namespace std ;
int n ;
unordered_map <int , int > f ;
int main ()
{
cin >> n ;
for(int cc=0 ;c*c<=n/2;c++){
for(int d=c;c*c+d*d<=n;d++){
if(f.find(c*c+d*d)==f.end())
f[c*c+d*d] =c ;
}
}
for(int a= 0 ;a*a*4 < =n ;a++) {
for(int b=a;a*a+b*b<=n/2;b++)
if(f.find(n-a*a-b*b)!=f.end()){
int c=f[n-a*a-b*b] ;
int d=int (sqrt(n-a*a-b*b-c*c)+1e-3) ;
cout << a<<" "<<b <<" "<< c<< " "<<d<<endl ;
return 0 ;
}
}
}