only require asm/util