refs #737 @4.0
 * refactoring