updates - continued refactoring ...