added the right hand versions
added inplace to eval, default to false when called externally