#include <iostream>
#include <sstream>
#include <string>
#include <vector>
using namespace std;

unsigned int ip2dec(string& ip){
    stringstream ss(ip);
    string str;
    unsigned int res = 0;
    while(getline(ss, str, '.')){
        res = ((res << 8) | stoi(str));
    }
    return res;
}

string dec2ip(unsigned int num){
    unsigned int mask = (1 << 8) - 1;
    vector<string> ans;
    for(int i = 0; i < 4; i++){
        int n = ((num >> (i * 8)) & mask);
        ans.push_back(to_string(n));
    }
    string str;
    for(int i = ans.size() - 1; i >0; i--){
        str += ans[i] + '.';
    }
    return str + ans[0];
}

int main() {
    string ip;
    unsigned int num;
    while (cin >> ip >> num) { // 注意 while 处理多个 case
        auto d = ip2dec(ip);
        auto p = dec2ip(num);
        cout << d << endl;
        cout << p << endl;
    }
}
// 64 位输出请用 printf("%lld")