anchor.diff:      var jsMethods = <js_ast.Method>[];
       assert(!field.isStatic);
   
  -    var name = getAnnotationName(field, isJSName) ?? field.name.name;
  +    var name = _annotationName(field, isJSName) ?? field.name.name;
       // Generate getter
       var fn = js_ast.Fun([], js.block('{ return this.#; }', [name]));
       var method = js_ast.Method(_declareMemberName(field), fn, isGetter: true);
  
positive.code: 
    js_ast.Expression _getImplicitCallTarget(InterfaceType from) {
      var c = from.classNode;
      var member = hierarchy.getInterfaceMember(c, Name("call"));
      if (member is Procedure && !member.isAccessor && !usesJSInterop(c)) {
        return _emitMemberName('call', member: member);
      }
  
negative.code:     return map.putIfAbsent(
          name,
          () =>
              _hierarchy.getDispatchTarget(c, Name(name)) ??
              _hierarchy.getDispatchTarget(c, Name(name), setter: true));
    }
  
    js_ast.Expression _emitStaticMemberName(String name, [NamedNode member]) {
  