-- updating system to have domain model
-- updated domain functions to account for new domain structure