anchor.diff:  final _logger = Logger('pub.name_tracker');
   
   /// The interval to update recent package name list.
  -const _pollingInterval = Duration(minutes: 15);
  +const _recentScanInterval = Duration(minutes: 15);
   
   /// The interval to reload the full package name list from scratch.
   const _reloadInterval = Duration(days: 1);
  
positive.code:   }
  
    Future<void> _scanRecentPackages() async {
      _logger.info('Scanning recent packages...');
      final start = clock.now().toUtc();
      final ts = _data._lastStartedTs.subtract(Duration(hours: 1));
  
      final query = _db!.query<Package>()
        ..order('-lastVersionPublished')
        ..filter('lastVersionPublished >', ts);
      await for (final p in query.run()) {
        _data.add(TrackedPackage.fromPackage(p));
      }
  
      final moderatedPkgQuery = _db!.query<ModeratedPackage>()
        ..order('moderated')
        ..filter('moderated >', ts);
  
      await for (final p in moderatedPkgQuery.run()) {
        _data.addModeratedName(p.name!);
      }
  
      _data._lastStartedTs = start;
      _logger
          .info('Recent packages scanned in ${clock.now().difference(start)}.');
    }
  
    /// Updates this [NameTracker] by polling the Datastore periodically.
    Future<void> startTracking() async {
      await reloadFromDatastore().timeout(_reloadTimeout);
      _pollingTimer ??= Timer.periodic(_pollingInterval, (_) async {
        try {
          await _scanRecentPackages().timeout(_pollingTimeout);
        } catch (e, st) {
          _logger.warning('Failed to update name tracker.', e, st);
        }
      });
      _reloadTimer ??= Timer.periodic(_reloadInterval, (_) async {
  
negative.code:   var _data = _Data();
  
    final _firstScanCompleter = Completer();
    Completer? _ongoingRecentScan;
    Timer? _recentScanTimer;
    Timer? _reloadTimer;
  
    NameTracker(this._db);
  