def METHOD_NAME(
    self: Float[LinearOperator, "*batch M N"], other: Union[float, torch.Tensor]
) -> Float[LinearOperator, "*batch M N"]:
    # We have to over-ride this here for the case where the constant is negative
    if other > 0:
        res = super().METHOD_NAME(other)
    else:
        res = AddedDiagLinearOperator(self._linear_op.METHOD_NAME(other), self._diag_tensor.METHOD_NAME(other))
    return res