refactered away PreCommand()