#include <iostream>
#include<string>
struct Frac {
unsigned long frac;
unsigned long exp;
friend std::istream& operator >>(std::istream& is, Frac &f)
{
std::string s;
is >> s;
std::size_t n = s.find(".");
if (n != std::string::npos)
{
f.frac = std::atoll(s.substr(0,n).c_str());
f.exp = std::atoll(s.substr(n+1).c_str());
}
else
{
f.frac = std::atoi(s.c_str());
f.exp = 0 ;
}
}
};
int main()
{
Frac f;
std::cin>>f;
std::cout << f.frac <<" "<< f.exp;
}
CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGU8c3RyaW5nPgogCiAKIHN0cnVjdCBGcmFjIHsKICAgICAgICAgICB1bnNpZ25lZCBsb25nICBmcmFjOwogICAgICAgICAgIHVuc2lnbmVkIGxvbmcgZXhwOwogICBmcmllbmQgc3RkOjppc3RyZWFtJiBvcGVyYXRvciA+PihzdGQ6OmlzdHJlYW0mIGlzLCBGcmFjICZmKQogICB7CiAgICAgIHN0ZDo6c3RyaW5nIHM7CiAgICAgIGlzID4+IHM7CiAgICAgIHN0ZDo6c2l6ZV90IG4gPSBzLmZpbmQoIi4iKTsKICAgICAKICAgICAgaWYgKG4gIT0gc3RkOjpzdHJpbmc6Om5wb3MpCiAgICAgIHsKICAgICAgICAgZi5mcmFjID0gc3RkOjphdG9sbChzLnN1YnN0cigwLG4pLmNfc3RyKCkpOwogICAgICAgICBmLmV4cCA9IHN0ZDo6YXRvbGwocy5zdWJzdHIobisxKS5jX3N0cigpKTsKICAgICAgfQogICAgICBlbHNlCiAgICAgIHsKICAgICAgICAgZi5mcmFjID0gc3RkOjphdG9pKHMuY19zdHIoKSk7CiAgICAgICAgIGYuZXhwICA9IDAgOwogICAgICB9CiAgIH0KfTsKICAKaW50IG1haW4oKQp7CiAgRnJhYyBmOwogIAogIHN0ZDo6Y2luPj5mOwogIAogIHN0ZDo6Y291dCA8PCBmLmZyYWMgPDwiICI8PCBmLmV4cDsKfQogCiAgICAK