moving stuff to models