created new model and test and refactored methods