anchor.diff:  
   import 'package:clock/clock.dart';
   import 'package:json_annotation/json_annotation.dart';
  -import 'package:logging/logging.dart';
   
   import '../shared/tags.dart';
   
  
positive.code:       return QueryValidity.reject(rejectReason: 'Query too long.');
      }
  
      // Do not allow override of search filter tags. (E.g. search scope would
      // require sdk:flutter, do not allow -sdk:flutter to override it).
      final conflictingTags =
          tagsPredicate._getConflictingTags(parsedQuery.tagsPredicate);
      if (conflictingTags.isNotEmpty) {
        return QueryValidity.reject(
            rejectReason:
                'Tag conflict with search filters: `${conflictingTags.join(', ')}`.');
      }
  
      return QueryValidity.accept();
    }
  }
  
negative.code:     return p;
    }
  
    /// Appends [other] predicate to the current set of tags, and returns a new
    /// [TagsPredicate] instance.
    ///
    /// If there are conflicting tag predicates, the [other] takes precedence over
    /// this [TagsPredicate].
    TagsPredicate appendPredicate(TagsPredicate other) {
      final p = TagsPredicate();
      p._values.addAll(_values);
      p._values.addAll(other._values);
  