#define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define rep(i, n) for(int i=0; i<(n); i++) #define FOR(i, m, n) for(int i=(m);i<(n);i++) #define sz(x) ((int)(x).size()) #define all(x) (x).begin(),(x).end() #define SORT(x) sort((x).begin(),(x).end()) #define REVE(x) reverse((x).begin(),(x).end()) #define mp make_pair #define pb push_back typedef vector VI; typedef vector VS; typedef vector> VVI; typedef pair PII; typedef long long LL; int main() { int a, b; string s; cin >> a >> b >> s; bool p, d = false; if (s[3] == '+')p = true; else p = false; rep(i, sz(s))if (s[i] == '.')d = true; int n1 = 0, n2 = 0; //n1 { int i = 4; while (i < sz(s) && s[i] != '.') { n1 = n1 * 10 + (s[i] - '0'); i++; } } //n2 if (d) { int i; rep(j, sz(s))if (s[j] == '.')i = j + 1; while (i < sz(s)) { n2 = n2 * 10 + (s[i] - '0'); i++; } } if (!p) { n1 *= -1; n2 *= -1; } if (!d)d = -1; a -= 9; if (d)b += 6 * n2; a += n1; a--; b += 60; a += b / 60; b %= 60; a = (a + 24) % 24; printf("%02d:%02d\n", a, b); }