anchor.diff:        return false;
       }
       // We don't know about this token.
  -    if (!_handlersTable[signal].containsKey(token)) {
  +    if (!_handlersTable[signal]!.containsKey(token)) {
         return false;
       }
  -    final SignalHandler handler = _handlersTable[signal].remove(token);
  +    final SignalHandler? handler = _handlersTable[signal]!.remove(token);
       if (handler == null) {
         return false;
       }
  -    final bool removed = _handlersList[signal].remove(handler);
  +    final bool removed = _handlersList[signal]!.remove(handler);
       if (!removed) {
         return false;
       }
  
positive.code: class LocalSignals implements Signals {
    LocalSignals._(this.exitSignals);
  
    static LocalSignals _instance;
    static LocalSignals get instance => _instance ??= LocalSignals._(
      Signals.defaultExitSignals,
    );
  
  
negative.code:   Object addHandler(ProcessSignal signal, SignalHandler handler) {
      final Object token = Object();
      _handlersTable.putIfAbsent(signal, () => <Object, SignalHandler>{});
      _handlersTable[signal]![token] = handler;
  
      _handlersList.putIfAbsent(signal, () => <SignalHandler>[]);
      _handlersList[signal]!.add(handler);
  
      // If we added the first one, then call signal.watch(), listen, and cache
      // the stream controller.
      if (_handlersList[signal]!.length == 1) {
        _streamSubscriptions[signal] = signal.watch().listen(
          _handleSignal,
          onError: (Object e) {
            _handlersTable[signal]?.remove(token);
            _handlersList[signal]?.remove(handler);
          },
        );
      }
  