import java.util.*;
import java.lang.*;
import java.net.*;
class Main
{
{
while ((s=r.readLine())!=null) {
System.
out.
println("toString\t\t" + url.
toString()); System.
out.
println("getPath \t\t" + url.
getPath()); System.
out.
println("getQuery\t\t" + url.
getQuery());
String query
= url.
getQuery(); URI uri = new URI(url.getProtocol(),
null /*userInfo*/,
url.getHost(),
url.getPort(),
(path
==null)?null:URLDecoder.
decode(path,
"UTF-8"),
(query
==null)?null:URLDecoder.
decode(query,
"UTF-8"),
null /*fragment*/);
System.
out.
println("uri.toString\t\t" + uri.
toString());
try {
System.
out.
println("url.toURI\t\t" + url.
toURI().
toString()); } catch (java.net.URISyntaxException e) {
System.
out.
println(e.
toString()); }
System.
out.
println("---------------------"); }
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLm5ldC4qOwoKY2xhc3MgTWFpbgp7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KICAgIHsKICAgICAgICBqYXZhLmlvLkJ1ZmZlcmVkUmVhZGVyIHIgPSBuZXcgamF2YS5pby5CdWZmZXJlZFJlYWRlciAobmV3IGphdmEuaW8uSW5wdXRTdHJlYW1SZWFkZXIgKFN5c3RlbS5pbikpOwogICAgICAgIFN0cmluZyBzOwogICAgICAgIHdoaWxlICgocz1yLnJlYWRMaW5lKCkpIT1udWxsKSB7CiAgICAgICAgICAgIFVSTCB1cmwgPSBuZXcgVVJMKHMpOwogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oInRvU3RyaW5nXHRcdCIgKyB1cmwudG9TdHJpbmcoKSk7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiZ2V0UGF0aCBcdFx0IiArIHVybC5nZXRQYXRoKCkpOwogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oImdldFF1ZXJ5XHRcdCIgKyB1cmwuZ2V0UXVlcnkoKSk7CgogICAgICAgICAgICBTdHJpbmcgcGF0aCAgPSB1cmwuZ2V0UGF0aCgpOwogICAgICAgICAgICBTdHJpbmcgcXVlcnkgPSB1cmwuZ2V0UXVlcnkoKTsKICAgICAgICAgICAgVVJJIHVyaSA9IG5ldyBVUkkodXJsLmdldFByb3RvY29sKCksIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsIC8qdXNlckluZm8qLywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsLmdldEhvc3QoKSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybC5nZXRQb3J0KCksIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGF0aD09bnVsbCk/bnVsbDpVUkxEZWNvZGVyLmRlY29kZShwYXRoLCAiVVRGLTgiKSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChxdWVyeT09bnVsbCk/bnVsbDpVUkxEZWNvZGVyLmRlY29kZShxdWVyeSwgIlVURi04IiksIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsIC8qZnJhZ21lbnQqLyk7CgogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oInVyaS50b1N0cmluZ1x0XHQiICsgdXJpLnRvU3RyaW5nKCkpOwoKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigidXJsLnRvVVJJXHRcdCIgKyB1cmwudG9VUkkoKS50b1N0cmluZygpKTsKICAgICAgICAgICAgfSBjYXRjaCAoamF2YS5uZXQuVVJJU3ludGF4RXhjZXB0aW9uIGUpIHsKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihlLnRvU3RyaW5nKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tIik7CiAgICAgICAgfQogICAgfQp9
aHR0cDovL3QuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLnQuY29tL3NvbWVmaWxlL25vcm1hbC5kYXRhP3F1ZXJ5PTMKaHR0cDovL3QuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLnQuY29tL3NvbWVmaWxlL3Vud2lzZXxjaGFyYWN0ZXJzLmRhdGE/cXVlcnk9MwpodHRwOi8vdC4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4udC5jb20vc29tZWZpbGUvZXNjYXBlZCUyMFNwYWNlLmRhdGE/cXVlcnk9NwpodHRwOi8vdC4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4udC5jb20vc29tZWZpbGUvdW53aXNlfGVzY2FwZWQlMjBTcGFjZS5kYXRhP3F1ZXJ5PXNvbWV0aGluZyZhbXA7cGFyYW09NApodHRwOi8vdC4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4udC5jb20vc29tZWZpbGUvdW53aXNlfG5vUXVlcnkuZGF0YQpodHRwOi8vci4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4udC5jb20vCmh0dHA6Ly9yLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi50LmNvbS8/cXVlcnk9MTEK
http://t...content-available-to-author-only...t.com/somefile/normal.data?query=3
http://t...content-available-to-author-only...t.com/somefile/unwise|characters.data?query=3
http://t...content-available-to-author-only...t.com/somefile/escaped%20Space.data?query=7
http://t...content-available-to-author-only...t.com/somefile/unwise|escaped%20Space.data?query=something¶m=4
http://t...content-available-to-author-only...t.com/somefile/unwise|noQuery.data
http://r...content-available-to-author-only...t.com/
http://r...content-available-to-author-only...t.com/?query=11