#include <chrono>
#include <cmath>
#include <iomanip>
#include <iostream>
#include <sstream>
using namespace std;
int main() {
istringstream timestamp("28.08.2017 03:59:55.0007");
tm tmb;
double r;
timestamp >> get_time(&tmb, "%d.%m.%Y %T") >> r;
const auto output = chrono::time_point_cast<chrono::microseconds>(chrono::system_clock::from_time_t(mktime(&tmb))) + chrono::microseconds(lround(r * micro::den));
cout << output.time_since_epoch().count() << endl;
}
I2luY2x1ZGUgPGNocm9ubz4KI2luY2x1ZGUgPGNtYXRoPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3N0cmVhbT4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKICBpc3RyaW5nc3RyZWFtIHRpbWVzdGFtcCgiMjguMDguMjAxNyAwMzo1OTo1NS4wMDA3Iik7CiAgdG0gdG1iOwogIGRvdWJsZSByOwoKICB0aW1lc3RhbXAgPj4gZ2V0X3RpbWUoJnRtYiwgIiVkLiVtLiVZICVUIikgPj4gcjsKCiAgY29uc3QgYXV0byBvdXRwdXQgPSBjaHJvbm86OnRpbWVfcG9pbnRfY2FzdDxjaHJvbm86Om1pY3Jvc2Vjb25kcz4oY2hyb25vOjpzeXN0ZW1fY2xvY2s6OmZyb21fdGltZV90KG1rdGltZSgmdG1iKSkpICsgY2hyb25vOjptaWNyb3NlY29uZHMobHJvdW5kKHIgKiBtaWNybzo6ZGVuKSk7CgogIGNvdXQgPDwgb3V0cHV0LnRpbWVfc2luY2VfZXBvY2goKS5jb3VudCgpIDw8IGVuZGw7Cn0=