Proper model pattern implemented