Lots of changes, now everything works as I want.