Basic model and logic implemented