now close to 100% test coverage