clean code
like model