Refactor a2