#include <iostream>
#include <string>
#include <sstream>
#include <vector>
#include <stdexcept>
using namespace std;
int main() {
stringstream ss;
string userInput;
vector<int> numbers = {2, 3, 8};
int value;
int result;
// Failed conversion will throw ios_base::failure
ss.exceptions(ios::failbit);
getline(cin, userInput);
while (userInput != "end") {
try {
ss.str("");
ss.clear();
ss << userInput;
ss >> value;
// Possible logic_error: out of range
if (value < 0) {
result = numbers.at(value);
}
else {
// Division by zero will throw runtime_error
if (value == 0) {
throw runtime_error("z");
}
result = 60 / value;
cout << result << endl;
}
}
catch (ios_base::failure& excpt) {
cout << "t" << endl;
}
catch (runtime_error& excpt) {
cout << excpt.what() << endl;
}
catch (logic_error& excpt) {
cout << "c" << endl;
}
getline(cin, userInput);
ss.clear();
}
cout << "OK" << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8c3N0cmVhbT4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPHN0ZGV4Y2VwdD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewogICBzdHJpbmdzdHJlYW0gc3M7CiAgIHN0cmluZyB1c2VySW5wdXQ7CiAgIHZlY3RvcjxpbnQ+IG51bWJlcnMgPSB7MiwgMywgOH07CiAgIGludCB2YWx1ZTsKICAgaW50IHJlc3VsdDsKICAgCiAgIC8vIEZhaWxlZCBjb252ZXJzaW9uIHdpbGwgdGhyb3cgaW9zX2Jhc2U6OmZhaWx1cmUKICAgc3MuZXhjZXB0aW9ucyhpb3M6OmZhaWxiaXQpOwogICAKICAgZ2V0bGluZShjaW4sIHVzZXJJbnB1dCk7CiAgIAogICB3aGlsZSAodXNlcklucHV0ICE9ICJlbmQiKSB7CiAgICAgIHRyeSB7CiAgICAgICAgIHNzLnN0cigiIik7CiAgICAgICAgIHNzLmNsZWFyKCk7CiAgICAgICAgIHNzIDw8IHVzZXJJbnB1dDsKICAgICAgICAgc3MgPj4gdmFsdWU7CiAgICAgICAgIAogICAgICAgICAvLyBQb3NzaWJsZSBsb2dpY19lcnJvcjogb3V0IG9mIHJhbmdlCiAgICAgICAgIGlmICh2YWx1ZSA8IDApIHsKICAgICAgICAgICAgcmVzdWx0ID0gbnVtYmVycy5hdCh2YWx1ZSk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIC8vIERpdmlzaW9uIGJ5IHplcm8gd2lsbCB0aHJvdyBydW50aW1lX2Vycm9yCiAgICAgICAgICAgIGlmICh2YWx1ZSA9PSAwKSB7CiAgICAgICAgICAgICAgIHRocm93IHJ1bnRpbWVfZXJyb3IoInoiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXN1bHQgPSA2MCAvIHZhbHVlOwogICAgICAgICAgICBjb3V0IDw8IHJlc3VsdCA8PCBlbmRsOwogICAgICAgICB9ICAgICAgICAgCiAgICAgIH0KICAgICAgY2F0Y2ggKGlvc19iYXNlOjpmYWlsdXJlJiBleGNwdCkgewogICAgICAgICBjb3V0IDw8ICJ0IiA8PCBlbmRsOwogICAgICB9CiAgICAgIGNhdGNoIChydW50aW1lX2Vycm9yJiBleGNwdCkgewogICAgICAgICBjb3V0IDw8IGV4Y3B0LndoYXQoKSA8PCBlbmRsOwogICAgICB9CiAgICAgIGNhdGNoIChsb2dpY19lcnJvciYgZXhjcHQpIHsKICAgICAgICAgY291dCA8PCAiYyIgPDwgZW5kbDsKICAgICAgfQogICAgICBnZXRsaW5lKGNpbiwgdXNlcklucHV0KTsKICAgICAgc3MuY2xlYXIoKTsKICAgfQogICBjb3V0IDw8ICJPSyIgPDwgZW5kbDsKICAgCiAgIHJldHVybiAwOwp9