Midterm: basic requirements, but work in progress.