extract to model

:sunglasses: