Lots of changes.

Last current version