public static Class[] getParameterTypes(Constructor c)
    {
        Class[] result;
        if ((result = (Class[]) _ctorParameterTypesCache.get(c)) == null) {
            synchronized (_ctorParameterTypesCache) {
                if ((result = (Class[]) _ctorParameterTypesCache.get(c)) == null) {
                    _ctorParameterTypesCache.put(c, result = c.getParameterTypes());
                }
            }
        }
        return result;
    }