Type.getInternalName( clazz ) );
mv.visitFieldInsn( Opcodes.PUTFIELD,
className,
DELEGATE_FIELD_NAME,
Type.getDescriptor( clazz ) );
<BUG>if ( Collection.class.isAssignableFrom( clazz ) ) {

Label l1 = new Label();</BUG>
mv.visitLabel( l1 );
mv.visitVarInsn( Opcodes.ALOAD,

Type.getInternalName( clazz ) );
mv.visitFieldInsn( Opcodes.PUTFIELD,
className,
DELEGATE_FIELD_NAME,
Type.getDescriptor( clazz ) );
if ( Collection.class.isAssignableFrom( clazz ) ||
Map.class.isAssignableFrom( clazz ) ) {
Label l1 = new Label();
mv.visitLabel( l1 );
mv.visitVarInsn( Opcodes.ALOAD,
