Update to ASM4 and use the abstract class which allows the removal of all the boilerplate code.