anchor.diff:        }
         // Encode the value
         var valType = val.runtimeType;
  -      if ((valType is List) && (valType is! Uint8List)) {
  -        valType = List;
  -      }
  -      if (valType is Map) {
  -        valType = Map;
  -      }
         switch (valType) {
           case int:
             _writeInt(val);
  
positive.code:     var ok = true;
      for (final dynamic element in value) {
        var valType = element.runtimeType;
        if ((valType is List) && (valType is! Uint8List)) {
          valType = List;
        }
        if (valType is Map) {
          valType = Map;
        }
        switch (valType) {
          case int:
            _writeInt(element);
  
negative.code:     var keysValid = true;
      for (final dynamic element in keys) {
        final elementType = element.runtimeType;
        if ((elementType is! int) || (elementType is! String)) {
          keysValid = false;
          break;
        }
  