MethodInterceptor mi = Enhancer.getMethodInterceptor(enhanced);
MethodInterceptor mi = (MethodInterceptor)((Factory)enhanced).getCallback(Callbacks.INTERCEPT);
        public static Object writeReplace(Object enhanced) throws ObjectStreamException {            MethodInterceptor mi = Enhancer.getMethodInterceptor(enhanced);            String parentClassName = enhanced.getClass().getSuperclass().getName();            Class interfaces[] = enhanced.getClass().getInterfaces();            List interfaceNames = new ArrayList(interfaces.length);                        for (int i = 0; i < interfaces.length; i++) {                // skip CGLIB interfaces                if (!ReflectUtils.getPackageName(interfaces[i]).equals("net.sf.cglib")) {                    interfaceNames.add(interfaces[i].getName());                }            }            return new InternalReplace(                parentClassName,                 (String[]) interfaceNames.toArray(new String[interfaceNames.size()]),                 mi            );        }