重构amj 2 amutil