import java.io.*;
import java.lang.reflect.*;
class Test2 {
Field modifiersField
= Field.
class.
getDeclaredField("modifiers"); modifiersField.setAccessible(true);
Field outField
= fdClass.
getDeclaredField("out"); outField.setAccessible(true);
modifiersField.
setInt(outField, outField.
getModifiers() & ~
Modifier.
FINAL); Field errField
= fdClass.
getDeclaredField("err"); errField.setAccessible(true);
modifiersField.
setInt(errField, errField.
getModifiers() & ~
Modifier.
FINAL); Field inField
= fdClass.
getDeclaredField("in"); inField.setAccessible(true);
modifiersField.
setInt(inField, inField.
getModifiers() & ~
Modifier.
FINAL); // program here
Constructor<?> c = fdClass.getDeclaredConstructor(int.class);
c.setAccessible(true);
System.
out.
println("Hello, World!"); }
}
aW1wb3J0IGphdmEuaW8uKjsKaW1wb3J0IGphdmEubGFuZy5yZWZsZWN0Lio7CmNsYXNzIFRlc3QyIHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBFeGNlcHRpb24gewogICAgICAgIGFyZ3MgPSBuZXcgU3RyaW5nWzBdOwogICAgICAgIFN5c3RlbS5zZXRPdXQobmV3IFByaW50U3RyZWFtKG5ldyBCeXRlQXJyYXlPdXRwdXRTdHJlYW0oKSkpOwogICAgICAgIFN5c3RlbS5zZXRFcnIobmV3IFByaW50U3RyZWFtKG5ldyBCeXRlQXJyYXlPdXRwdXRTdHJlYW0oKSkpOwogICAgICAgIFN5c3RlbS5zZXRJbihuZXcgQnl0ZUFycmF5SW5wdXRTdHJlYW0obmV3IGJ5dGVbMF0pKTsKCiAgICAgICAgRmllbGQgbW9kaWZpZXJzRmllbGQgPSBGaWVsZC5jbGFzcy5nZXREZWNsYXJlZEZpZWxkKCJtb2RpZmllcnMiKTsKICAgICAgICBtb2RpZmllcnNGaWVsZC5zZXRBY2Nlc3NpYmxlKHRydWUpOwoKICAgICAgICBDbGFzczw/PiBmZENsYXNzID0gamF2YS5pby5GaWxlRGVzY3JpcHRvci5jbGFzczsKICAgICAgICBGaWVsZCBvdXRGaWVsZCA9IGZkQ2xhc3MuZ2V0RGVjbGFyZWRGaWVsZCgib3V0Iik7CiAgICAgICAgb3V0RmllbGQuc2V0QWNjZXNzaWJsZSh0cnVlKTsKICAgICAgICBtb2RpZmllcnNGaWVsZC5zZXRJbnQob3V0RmllbGQsIG91dEZpZWxkLmdldE1vZGlmaWVycygpICYgfk1vZGlmaWVyLkZJTkFMKTsKICAgICAgICBvdXRGaWVsZC5zZXQobnVsbCwgbmV3IEZpbGVEZXNjcmlwdG9yKCkpOwogICAgICAgIEZpZWxkIGVyckZpZWxkID0gZmRDbGFzcy5nZXREZWNsYXJlZEZpZWxkKCJlcnIiKTsKICAgICAgICBlcnJGaWVsZC5zZXRBY2Nlc3NpYmxlKHRydWUpOwogICAgICAgIG1vZGlmaWVyc0ZpZWxkLnNldEludChlcnJGaWVsZCwgZXJyRmllbGQuZ2V0TW9kaWZpZXJzKCkgJiB+TW9kaWZpZXIuRklOQUwpOwogICAgICAgIGVyckZpZWxkLnNldChudWxsLCBuZXcgRmlsZURlc2NyaXB0b3IoKSk7CiAgICAgICAgRmllbGQgaW5GaWVsZCA9IGZkQ2xhc3MuZ2V0RGVjbGFyZWRGaWVsZCgiaW4iKTsKICAgICAgICBpbkZpZWxkLnNldEFjY2Vzc2libGUodHJ1ZSk7CiAgICAgICAgbW9kaWZpZXJzRmllbGQuc2V0SW50KGluRmllbGQsIGluRmllbGQuZ2V0TW9kaWZpZXJzKCkgJiB+TW9kaWZpZXIuRklOQUwpOwogICAgICAgIGluRmllbGQuc2V0KG51bGwsIG5ldyBGaWxlRGVzY3JpcHRvcigpKTsKICAgICAgICAvLyBwcm9ncmFtIGhlcmUKICAgICAgICBDb25zdHJ1Y3Rvcjw/PiBjID0gZmRDbGFzcy5nZXREZWNsYXJlZENvbnN0cnVjdG9yKGludC5jbGFzcyk7CiAgICAgICAgYy5zZXRBY2Nlc3NpYmxlKHRydWUpOwogICAgICAgIFN5c3RlbS5zZXRPdXQobmV3IFByaW50U3RyZWFtKG5ldyBGaWxlT3V0cHV0U3RyZWFtKChGaWxlRGVzY3JpcHRvciljLm5ld0luc3RhbmNlKDEpKSkpOwoJCSAgU3lzdGVtLm91dC5wcmludGxuKCJIZWxsbywgV29ybGQhIik7CiAgICB9Cn0=