this is where I got to so far...bloody Rust changing all the time.