@Override
	public void visitInsn(ClassNode c, MethodNode m, Instruction monitor) {
		if(monitor.opcodeClass() == opc_monitorenter) {
			MethodEditor e = m.editor();

			Instruction astore = prev(m, monitor);
			if(astore == null) 
				return;
			
			Instruction dup = prev(m, astore);
			if(dup == null)
				return;
			
			if(astore.opcodeClass() == opc_astore && dup.opcodeClass() == opc_dup) {
				e.code().remove(astore);
				e.replaceCodeAt(astore, e.code().indexOf(dup));
				e.insertCodeAt(new Instruction(opc_aload, astore.operand()), e.code().indexOf(astore) + 1);
				
				count++;
			}
		}
	}