updating log fleshed out, not tested
code compiles, not tested