// -- Phase 1 -- type change
final ClassWriter writerPhase1 = AsmHelper.newClassWriter(true);
final ClassReader readerPhase1 = new ClassReader(bytecode);
ClassVisitor reversedChainPhase1 = writerPhase1;
reversedChainPhase1 = new AddMixinMethodsVisitor(reversedChainPhase1, classInfo, context, addedMethods);
reversedChainPhase1 = new AddInterfaceVisitor(reversedChainPhase1, classInfo, context);
reversedChainPhase1 = new AddSerialVersionUidVisitor(reversedChainPhase1, classInfo, context, true);
readerPhase1.accept(reversedChainPhase1, Attributes.getDefaultAttributes(), false);
final byte[] bytesPhase1 = writerPhase1.toByteArray();
// update the class info