public boolean rm(Msg msg, Pipe pipe)
    {
        assert (msg != null);
        assert (pipe != null);
        return rmHelper(msg, 1, msg.size() - 1, pipe);
    }
public boolean rm ( Msg msg , Pipe pipe ) { assert ( msg != null ) ; assert ( pipe != null ) ; return rmHelper ( msg , 1 , msg . size ( ) - 1 , pipe ) ; }
actually removed rather than de-duplicated.