Moved impl to model