models and associations mostly constructed