Separate model from component