refactor basescene