sm.addPermission(source, new PropertyPermission("java.security.debug", "read"));
sm.addPermission(source, new PropertyPermission("javax.xml.datatype.DatatypeFactory", "read"));
sm.addPermission(source, new PropertyPermission("jaxp.debug", "read"));
sm.addPermission(source, new PropertyPermission("sun.boot.class.path", "read"));
sm.addPermission(source, new PropertyPermission("sun.timezone.ids.oldmapping", "read"));
sm.addPermission(source, new ReflectPermission("suppressAccessChecks"));
sm.addPermission(source, new NetPermission("specifyStreamHandler"));
sm.setReadOnly();
System.setSecurityManager(sm);
// uses implicit Sun14ReflectionProvider in JDK >= 1.4, since it has the appropriate