concepct refactor: scope