//lazy initialization of allowPackages to avoid startup failure
if (allowedPackages == null) {
String class_name = typeDescr.substring(1, typeDescr.length() - 1).replace('/', '.');
try {
Class<Annotation> cls = (Class<Annotation>) Class.forName(class_name);
final AllowedPackages ann = cls.getAnnotation(AllowedPackages.class);
if (ann != null) {
allowedPackages = ann.value();
} else {
allowedPackages = EMPTY_PACKAGES;
}
} catch (ClassNotFoundException x) {
throw new RuntimeException(x);