refactor core stat