anchor.diff:      ]);
     }
   
  -  jsAst.ArrayInitializer generateTypeToInterceptorMap() {
  +  jsAst.ArrayInitializer? generateTypeToInterceptorMap() {
       // TODO(sra): Perhaps inject a constant instead?
       CustomElementsCodegenAnalysis analysis = _customElementsCodegenAnalysis;
       if (!analysis.needsTable) return null;
   
  -    List<jsAst.Expression /*!*/ > elements = [];
  +    List<jsAst.Expression> elements = [];
       Iterable<ConstantValue> constants =
           _codegenWorld.getConstantsForEmission(_emitter.compareConstants);
       for (ConstantValue constant in constants) {
         if (constant is TypeConstantValue &&
             constant.representedType is InterfaceType) {
  -        InterfaceType type = constant.representedType;
  +        InterfaceType type = constant.representedType as InterfaceType;
           ClassEntity classElement = type.element;
           if (!analysis.needsClass(classElement)) continue;
   
  
positive.code:         var properties = <jsAst.Property>[];
          for (ConstructorEntity member in analysis.constructors(classElement)) {
            properties.add(jsAst.Property(
                js.string(member.name), _emitter.staticFunctionAccess(member)));
          }
  
          var map = jsAst.ObjectInitializer(properties);
  
negative.code:     jsAst.Name invocationName = _namer.invocationName(selector);
      var globalObject = _namer.readGlobalObjectForInterceptors();
  
      jsAst.Statement? optimizedPath =
          _fastPathForOneShotInterceptor(selector, classes);
      optimizedPath ??= js.statement(';');
  
  