av refactor