#include<iostream>
#include<algorithm>
#include<vector>
#include<stdio.h>
using namespace std;
class times
{
public:
int h,m,s,ms;
int mili;
times ()
{
h = m=s=ms =0;
mili = 0;
}
times(int a,int b,int c,int d)
{
h = a,m=b,s=c,ms=d;
make();
}
void bake( ) //do reverse of make() for given mili
{
long int x = mili;
ms = x%1000;
x /= 1000;
s = x%60;
x/= 60;
m = x%60;
x /= 60;
}
void make() // calc total mili based on cur val of h,m,s and ms
{
this->mili = ms;
this->mili += s*1000 + m*60*1000 + h*3600*1000;
}
};
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0);
int h,m,s,msl;
bool flag;
string str;
scanf("%d:%d:%d:%d",&h,&m,&s,&msl);
times mid(h,m,s,msl);
int low=0,high;
high = mid.mili;
while( low < high )
{
mid.mili = (high+low)/2;
mid.bake();
printf("%d:%02d:%02d:%03d" , mid.h , mid.m,mid.s,mid.ms );
fflush(stdout); //FLUSH
cin>>str; // the relic
if(str=="PLATINUM") // we have more time than req
{
low = mid.mili+1;
//low.bake();
flag = true;
}
else
{
high = mid.mili-1;
// high.bake();
flag = false;
}
// break;
}
if(!flag)
{
// mid.mili -= 1;
//mid.bake();
mid.mili = high;
mid.bake();
printf("PLATINUM: %d:%02d:%02d:%03d" ,mid.h , mid.m,mid.s,mid.ms);
}
else
{
mid.mili = low;
mid.bake();
printf("PLATINUM: %d:%02d:%02d:%03d" ,mid.h , mid.m,mid.s,mid.ms);
}
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGFsZ29yaXRobT4KI2luY2x1ZGU8dmVjdG9yPgojaW5jbHVkZTxzdGRpby5oPgoKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyB0aW1lcwp7CiAgICBwdWJsaWM6CiAgICBpbnQgaCxtLHMsbXM7CiAgICBpbnQgbWlsaTsKCiAgICB0aW1lcyAoKQogICAgewogICAgICAgIGggPSBtPXM9bXMgPTA7CiAgICAgICAgbWlsaSA9IDA7CiAgICB9CgoKICAgIHRpbWVzKGludCBhLGludCBiLGludCBjLGludCBkKQogICAgewogICAgICAgIGggPSBhLG09YixzPWMsbXM9ZDsKICAgICAgICBtYWtlKCk7CiAgICB9CgoKICAgdm9pZCBiYWtlKCApIC8vZG8gcmV2ZXJzZSBvZiBtYWtlKCkgZm9yIGdpdmVuIG1pbGkKICAgewogICAgICAgIGxvbmcgaW50IHggPSBtaWxpOwogICAgICAgIG1zID0geCUxMDAwOwogICAgICAgIHggLz0gMTAwMDsKICAgICAgICBzID0geCU2MDsKICAgICAgICB4Lz0gNjA7CiAgICAgICAgbSA9IHglNjA7CiAgICAgICAgeCAvPSA2MDsKCiAgIH0KCgogICB2b2lkIG1ha2UoKSAgLy8gY2FsYyB0b3RhbCBtaWxpIGJhc2VkIG9uIGN1ciB2YWwgb2YgaCxtLHMgYW5kIG1zCiAgIHsKICAgICAgICB0aGlzLT5taWxpID0gbXM7CiAgICAgICAgdGhpcy0+bWlsaSArPSBzKjEwMDAgKyBtKjYwKjEwMDAgKyBoKjM2MDAqMTAwMDsKICAgfQoKCn07CgppbnQgbWFpbigpCnsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZSgwKTsKICAgaW50IGgsbSxzLG1zbDsKICAgYm9vbCBmbGFnOwogICBzdHJpbmcgc3RyOwogICAgICAgIHNjYW5mKCIlZDolZDolZDolZCIsJmgsJm0sJnMsJm1zbCk7CgogICAgICAgIHRpbWVzIG1pZChoLG0scyxtc2wpOwogICAgICAgIGludCBsb3c9MCxoaWdoOwoKICAgICAgICBoaWdoID0gbWlkLm1pbGk7CiAgICAgICAgd2hpbGUoIGxvdyA8IGhpZ2ggKQogICAgICAgIHsKICAgICAgICAgICAgbWlkLm1pbGkgPSAoaGlnaCtsb3cpLzI7CgoKICAgICAgICAgICAgbWlkLmJha2UoKTsKCgogICAgICAgICAgIHByaW50ZigiJWQ6JTAyZDolMDJkOiUwM2QiICwgbWlkLmggLCBtaWQubSxtaWQucyxtaWQubXMgKTsKICAgICAgICAgICAgZmZsdXNoKHN0ZG91dCk7IC8vRkxVU0gKCiAgICAgICAgICAgIGNpbj4+c3RyOyAvLyB0aGUgcmVsaWMKCiAgICAgICAgICAgIGlmKHN0cj09IlBMQVRJTlVNIikgLy8gd2UgaGF2ZSBtb3JlIHRpbWUgdGhhbiByZXEKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBsb3cgPSBtaWQubWlsaSsxOwogICAgICAgICAgICAgICAgICAgIC8vbG93LmJha2UoKTsKICAgICAgICAgICAgICAgICAgICBmbGFnID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGhpZ2ggPSBtaWQubWlsaS0xOwogICAgICAgICAgICAgICAgICAgLy8gaGlnaC5iYWtlKCk7CiAgICAgICAgICAgICAgICAgICAgZmxhZyA9IGZhbHNlOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgLy8gYnJlYWs7CgogICAgICAgIH0KICAgICAgICBpZighZmxhZykKICAgICAgICB7CiAgICAgICAgICAgLy8gbWlkLm1pbGkgLT0gMTsKICAgICAgICAgICAgLy9taWQuYmFrZSgpOwogICAgICAgICAgICBtaWQubWlsaSA9IGhpZ2g7CiAgICAgICAgICAgIG1pZC5iYWtlKCk7CiAgICAgICAgcHJpbnRmKCJQTEFUSU5VTTogJWQ6JTAyZDolMDJkOiUwM2QiICxtaWQuaCAsIG1pZC5tLG1pZC5zLG1pZC5tcyk7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CgogICAgICAgICAgIG1pZC5taWxpID0gbG93OwogICAgICAgICAgICBtaWQuYmFrZSgpOwogICAgICAgIHByaW50ZigiUExBVElOVU06ICVkOiUwMmQ6JTAyZDolMDNkIiAsbWlkLmggLCBtaWQubSxtaWQucyxtaWQubXMpOwoKCiAgICAgICAgfQoKCgoKCgogICAgcmV0dXJuIDA7Cn0KCgo=