lots of changes and the first model