[refactor] naming and structure