anchor.diff:            Set<ClassEntity> intercepted = _interceptorData
                 .getInterceptedClassesOn(user.selector.name, _closedWorld);
             if (intercepted.contains(_commonElements.jsIntClass)) {
  -            // TODO(johnniwinther): Use type argument when all uses of
  -            // intercepted classes expect entities instead of elements.
  -            required ??= new Set<ClassEntity>();
  +            required ??= {};
               required.add(_commonElements.jsIntClass);
             }
             if (intercepted.contains(_commonElements.jsDoubleClass)) {
  -            // TODO(johnniwinther): Use type argument when all uses of
  -            // intercepted classes expect entities instead of elements.
  -            required ??= new Set<ClassEntity>();
  +            required ??= {};
               required.add(_commonElements.jsDoubleClass);
             }
           }
  
positive.code:         useCount(dominator, node) == 1) {
        interceptedClasses = _interceptorData.getInterceptedClassesOn(
            dominator.selector.name, _closedWorld);
  
        // If we found that we need number, we must still go through all
        // uses to check if they require int, or double.
        if (interceptedClasses.contains(_commonElements.jsNumberClass) &&
  
negative.code:         }
        }
      } else {
        interceptedClasses = {};
        for (HInstruction user in node.usedBy) {
          if (user is HInvokeDynamic &&
              user.isCallOnInterceptor(_closedWorld) &&
  