A lot of work
a long time in update all of this - too much to mention