added AccessController.doPrivileged because of reflection stuff