nearly finished the first pass without test
found a link recalc error, corrected it