@@ -0,0 +1,2189 @@
+/* %0A* @Author: Zeyuan Shang%0A* @Date:   2015-12-22 17:43:41%0A* @Last Modified by:   Zeyuan Shang%0A* @Last Modified time: 2015-12-22 17:43:50%0A*/%0A%0Aimport java.io.*;%0Aimport java.lang.reflect.*;%0Aimport java.util.*;%0Aimport java.util.regex.*;%0Aimport java.security.*;%0A%0Aclass Solution %7B%0A    public static void main(String%5B%5D args) throws Exception %7B%0A        Do_Not_Terminate.forbidExit();  %0A%0A        try%7B%0A            BufferedReader br=new BufferedReader(new InputStreamReader(System.in));%0A            int num=Integer.parseInt(br.readLine().trim());%0A            Object o;// Must be used to hold the reference of the instance of the class Solution.Inner.Private%0A%0A///%0AClass klass1=Class.forName(%22Solution$Inner%22);%0AClass klass2=Class.forName(%22Solution$Inner$Private%22);%0AConstructor ctor=klass2.getDeclaredConstructor(klass1);%0Actor.setAccessible(true);%0Ao=ctor.newInstance(klass1.newInstance());%0AMethod meth=klass2.getDeclaredMethod(%22powerof2%22,int.class);%0Ameth.setAccessible(true);%0ASystem.out.println(String.valueOf(num)+%22 is %22+(String)meth.invoke(o,num));%0A///%0A%0A            System.out.println(%22An instance of class: %22+o.getClass().getCanonicalName()+%22 has been created%22);%0A        %0A        %7D//end of try%0A        %0A        catch (Do_Not_Terminate.ExitTrappedException e) %7B%0A            System.out.println(%22Unsuccessful Termination!!%22);%0A        %7D%0A    %7D//end of main%0A    static class Inner%0A    %7B%0A        private class Private%7B%0A            private String powerof2(int num)%0A            %7B%0A                return ((num&num-1)==0)?%22power of 2%22:%22not a power of 2%22;%0A            %7D%0A        %7D%0A    %7D//end of Inner%0A    %0A%7D//end of Solution%0A%0Aclass Do_Not_Terminate %7B%0A     %0A    public static class ExitTrappedException extends SecurityException %7B%0A%0A        private static final long serialVersionUID = 1L;%0A    %7D%0A %0A    public static void forbidExit() %7B%0A        final SecurityManager securityManager = new SecurityManager() %7B%0A            @Override%0A            public void checkPermission(Permission permission) %7B%0A                if (permission.getName().contains(%22exitVM%22)) %7B%0A                    throw new ExitTrappedException();%0A                %7D%0A            %7D%0A        %7D;%0A        System.setSecurityManager(securityManager);%0A    %7D%0A%7D

add can-you-access