anchor.diff:  class DomImageData {}
   
   DomImageData createDomImageData(Object? data, int sw, int sh) => js_util
  -    .callConstructor(domGetConstructor('ImageData')!, <Object?>[data, sw, sh]);
  +    .callConstructor(domGetConstructor('ImageData')!, <Object?>[data,
  +        sw.toDouble(), sh.toDouble()]);
   
   extension DomImageDataExtension on DomImageData {
     external Uint8ClampedList get data;
  
positive.code:   external void setAttribute(String name, Object value);
    void appendText(String text) => append(createDomText(text));
    external void removeAttribute(String name);
    external set tabIndex(int? value);
    external int? get tabIndex;
    external void focus();
  
    /// [scrollTop] and [scrollLeft] can both return non-integers when using
    /// display scaling.
    ///
    /// The setters have a spurious round just in case the supplied [int] flowed
    /// from the non-static interop JS API. When all of Flutter Web has been
    /// migrated to static interop we can probably remove the rounds.
    int get scrollTop => (js_util.getProperty(this, 'scrollTop') as num).round();
    set scrollTop(int value) =>
        js_util.setProperty<num>(this, 'scrollTop', value);
    int get scrollLeft => (js_util.getProperty(this, 'scrollLeft') as num).round();
    set scrollLeft(int value) =>
        js_util.setProperty<num>(this, 'scrollLeft', value);
    external DomTokenList get classList;
    external set className(String value);
    external String get className;
  
negative.code: extension DomCSSStyleSheetExtension on DomCSSStyleSheet {
    external DomCSSRuleList get cssRules;
    int insertRule(String rule, [int? index]) => js_util
        .callMethod<double>(
            this, 'insertRule',
            <Object>[rule, if (index != null) index.toDouble()]).toInt();
  }
  
  @JS()
  