return new InternalReplace(parentClassName, interfaceNames, mi);
return new InternalReplace( parentClassName, (String[]) interfaceNames.toArray(new String[interfaceNames.size()]), mi );
        public static Object writeReplace(Object enhanced) throws ObjectStreamException {            MethodInterceptor mi = Enhancer.getMethodInterceptor(enhanced);            String parentClassName = enhanced.getClass().getSuperclass().getName();            Class interfaces[] = enhanced.getClass().getInterfaces();            String [] interfaceNames = new String[interfaces.length];                        for (int i = 0; i < interfaces.length; i++) {                interfaceNames[i] = interfaces[i].getName();            }                        return new InternalReplace(parentClassName, interfaceNames, mi);        }