mass refactor
Merge branch 'refactor/type'

* refactor/type:
  mass refactor