reverse operator overrides, thanks a.elmore