report chart refactoring