const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void (async function () {
    // Write your code here
    let n_IP = await readline();
    let n_num = await readline();

    // ip -> 二进制串 -> 十进制数字
    let ip_arr = n_IP.split(".");
    let ip_erjinzhi_str = ""; // 10进制转换为2进制后拼接的字符串
    for (let i = 0; i < ip_arr.length; i++) {
        let tmp = parseInt(ip_arr[i]).toString(2); // 十进制转换为二进制
        if (tmp.length < 8) {
            let chazhi = 8 - tmp.length,
                qian0 = "";
            for (let j = 0; j < chazhi; j++) {
                qian0 += "0";
            }
            tmp = qian0 + tmp;
        }
        ip_erjinzhi_str += tmp;
    }
    let num_er_shi = er_str_shi(ip_erjinzhi_str); // 需要打印的十进制数字

    // 十进制数字->二进制串-> ip
    let shi_to_er_str = parseInt(n_num).toString(2);
    if (shi_to_er_str.length < 32) {
        let cha0 = 32 - shi_to_er_str.length;
        let c0 = "";
        for (let g = 0; g < cha0; g++) {
            c0 += "0";
        }
        shi_to_er_str = c0 + shi_to_er_str;
    }
    let num_to_ip = "";
    for (let f = 0; f < shi_to_er_str.length; f += 8) {
        let tc = shi_to_er_str.substring(f, f + 8);
        let tc_num_10 = er_str_shi(tc);
        num_to_ip = num_to_ip + tc_num_10 + '.';
        
    }
    num_to_ip = num_to_ip.substring(0,num_to_ip.length-1); // 去掉最后一个点

    console.log(num_er_shi);
    console.log(num_to_ip);
})();

// 将二进制字符串转换成10进制
function er_str_shi(str) {
    let str_arr = str.split("");
    let num = 0;
    for (let j = str_arr.length - 1; j >= 0; j--) {
        let wei = str_arr.length - j; // 当前在倒数第几位
        if (str_arr[j] == "1") {
            let need2 = wei - 1;
            if (need2 == 0) {
                // 最后一位
                num += 1;
            } else {
                let chengEr = 1;
                for (let k = 0; k < need2; k++) {
                    chengEr *= 2;
                }
                num += chengEr;
            }
        }
    }
    return num;
}