#master - refactored model