process.stdin.resume();
process.stdin.setEncoding('utf8');
var f = function(line) {
var m = line.match(/https?\:\/\//);
if (m == null) {
return line;
}
var html = '';
var i;
var stopper = /( |\n|\t)/;
// Trim header
var buf = '';
for (i = 0; i < m.index; i++) {
buf += line[i];
}
if (buf.length) {
html += buf;
buf = '';
}
// Trim URL
for (i = m.index; i < line.length; i++) {
var c = line[i];
if (c.match(stopper)) {
break;
}
buf += c;
}
if (buf.length) {
html += '<a href="' + buf + '" target="_blank">' + buf + '</a>';
buf = '';
}
// Trim footer
if (i < line.length) {
html += f(line.substr(i));
}
return html;
};
var put = function(html) {
console.log('[' + html + ']');
};
put(f('http://i...content-available-to-author-only...e.com/')); // ideone のつもり
put(f('http://e...content-available-to-author-only...e.com/'));
put(f(' http://e...content-available-to-author-only...e.com/'));
put(f('http://e...content-available-to-author-only...e.com/ '));
put(f(' http://e...content-available-to-author-only...e.com/ '));
put(f(' http://e...content-available-to-author-only...e.com/ http://e...content-available-to-author-only...e.com/ '));
cHJvY2Vzcy5zdGRpbi5yZXN1bWUoKTsKcHJvY2Vzcy5zdGRpbi5zZXRFbmNvZGluZygndXRmOCcpOwoKdmFyIGYgPSBmdW5jdGlvbihsaW5lKSB7CiAgICB2YXIgbSA9IGxpbmUubWF0Y2goL2h0dHBzP1w6XC9cLy8pOwogICAgaWYgKG0gPT0gbnVsbCkgewogICAgICAgIHJldHVybiBsaW5lOwogICAgfQoKICAgIHZhciBodG1sID0gJyc7CiAgICB2YXIgaTsKICAgIHZhciBzdG9wcGVyID0gLyggfFxufFx0KS87CgogICAgLy8gVHJpbSBoZWFkZXIKICAgIHZhciBidWYgPSAnJzsKICAgIGZvciAoaSA9IDA7IGkgPCBtLmluZGV4OyBpKyspIHsKICAgICAgICBidWYgKz0gbGluZVtpXTsKICAgIH0KICAgIGlmIChidWYubGVuZ3RoKSB7CiAgICAgICAgaHRtbCArPSBidWY7CiAgICAgICAgYnVmID0gJyc7ICAgICAgICAgICAKICAgIH0KCiAgICAvLyBUcmltIFVSTAogICAgZm9yIChpID0gbS5pbmRleDsgaSA8IGxpbmUubGVuZ3RoOyBpKyspIHsKICAgICAgICB2YXIgYyA9IGxpbmVbaV07CiAgICAgICAgaWYgKGMubWF0Y2goc3RvcHBlcikpIHsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGJ1ZiArPSBjOwogICAgfQogICAgaWYgKGJ1Zi5sZW5ndGgpIHsKICAgICAgICBodG1sICs9ICc8YSBocmVmPSInICsgYnVmICsgJyIgdGFyZ2V0PSJfYmxhbmsiPicgKyBidWYgKyAnPC9hPic7CiAgICAgICAgYnVmID0gJyc7CiAgICB9CgogICAgLy8gVHJpbSBmb290ZXIKICAgIGlmIChpIDwgbGluZS5sZW5ndGgpIHsKICAgICAgICBodG1sICs9IGYobGluZS5zdWJzdHIoaSkpOwogICAgfQoKICAgIHJldHVybiBodG1sOwp9OwoKdmFyIHB1dCA9IGZ1bmN0aW9uKGh0bWwpIHsKICAgIGNvbnNvbGUubG9nKCdbJyArIGh0bWwgKyAnXScpOyAgCn07CgpwdXQoZignaHR0cDovL2kuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tLycpKTsgLy8gaWRlb25lIOOBruOBpOOCguOCigpwdXQoZignaHR0cDovL2UuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tLycpKTsKcHV0KGYoJyAgaHR0cDovL2UuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tLycpKTsKcHV0KGYoJ2h0dHA6Ly9lLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5lLmNvbS8gICcpKTsKcHV0KGYoJyAgaHR0cDovL2UuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tLyAgJykpOwpwdXQoZignICBodHRwOi8vZS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vICBodHRwOi8vZS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vICAnKSk7Cg==