banner refactor