No inheritance in Go. It is a composition.
refactor