bool equal(const self_type& rhs) const
 {
     if (valid_)
     {
         if (rhs.valid_)
             return this->base() == rhs.base();
         else
             return false;
     }
     else
         return !rhs.valid_;
 }