refactor top report