Redefine in ClassLoad on current thread.
Trying to redefine: class Transform. Caught error class java.lang.Exception: Failed to retransform class <LTransform;> due to JVMTI_ERROR_INTERNAL (FAILURE TO RETRANSFORM Modification of class java.lang.Class<Transform> from within the classes ClassLoad callback is not supported to prevent deadlocks. Please use ClassFileLoadHook directly instead.)
Object out is: NON Transformed Object
Redefine during ClassLoad on another thread.
retransformClasses on an unprepared class succeeded
Object out is: Transformed object!
Redefinition thread finished.
