cleanup
implementation tweak