Version 1.21.0-dev.3.0

Merge 2cd737ababc68262362567ad3df5144c4bdcf701 into dev
diff --git a/BUILD.gn b/BUILD.gn
index a7d7e22..a027a2e 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -25,33 +25,35 @@
   deps = [
     "runtime/bin:dart",
     "runtime/bin:dart_bootstrap($host_toolchain)",
-    "runtime/bin:run_vm_tests",
     "runtime/bin:process_test",
-    "runtime/bin:test_extension",
+    "runtime/bin:run_vm_tests",
     "runtime/bin:sample_extension",
+    "runtime/bin:test_extension",
+    "runtime/vm:patched_sdk",
   ]
 }
 
 group("runtime_precompiled") {
   deps = [
-    "runtime/bin:dart_precompiled_runtime",
     "runtime/bin:dart_bootstrap($host_toolchain)",
+    "runtime/bin:dart_precompiled_runtime",
+    "runtime/vm:patched_sdk",
   ]
 }
 
 group("runtime_and_noopt") {
   deps = [
     "runtime/bin:dart",
-    "runtime/bin:dart_noopt",
     "runtime/bin:dart_bootstrap($host_toolchain)",
-    "runtime/bin:run_vm_tests",
+    "runtime/bin:dart_noopt",
     "runtime/bin:process_test",
-    "runtime/bin:test_extension",
+    "runtime/bin:run_vm_tests",
     "runtime/bin:sample_extension",
+    "runtime/bin:test_extension",
+    "runtime/vm:patched_sdk",
   ]
 }
 
-
 action("create_sdk") {
   deps = [
     "runtime/bin:dart",
@@ -68,35 +70,43 @@
   ]
 
   sdk_lib_files = exec_script("tools/list_dart_files.py",
-      [rebase_path("sdk/lib")],
-      "list lines")
+                              [ rebase_path("sdk/lib") ],
+                              "list lines")
 
-  preamble_files = exec_script("tools/list_files.py",
-      ["", rebase_path("sdk/lib/_internal/js_runtime/lib/preambles")],
-      "list lines")
+  preamble_files =
+      exec_script("tools/list_files.py",
+                  [
+                    "",
+                    rebase_path("sdk/lib/_internal/js_runtime/lib/preambles"),
+                  ],
+                  "list lines")
 
   sdk_bin_files = exec_script("tools/list_files.py",
-      ["", rebase_path("sdk/bin")],
-      "list lines")
+                              [
+                                "",
+                                rebase_path("sdk/bin"),
+                              ],
+                              "list lines")
 
   inputs = rebase_path(sdk_lib_files, "", "sdk/lib") +
-           rebase_path(preamble_files, "",  "sdk/lib") +
-           rebase_path(sdk_bin_files, "", "sdk/bin") + [
-    "sdk/lib/dart_client.platform",
-    "sdk/lib/dart_server.platform",
-    "sdk/lib/dart_shared.platform",
-    "$root_gen_dir/dart2js.dart.snapshot",
-    "$root_gen_dir/utils_wrapper.dart.snapshot",
-    "$root_gen_dir/pub.dart.snapshot",
-    "$root_gen_dir/dartanalyzer.dart.snapshot",
-    "$root_gen_dir/dartdevc.dart.snapshot",
-    "$root_gen_dir/dartfmt.dart.snapshot",
-    "$root_gen_dir/analysis_server.dart.snapshot",
-    "$root_gen_dir/dartdoc.dart.snapshot",
-    "$root_gen_dir/spec.sum",
-    "$root_gen_dir/strong.sum",
-    "tools/VERSION"
-  ]
+           rebase_path(preamble_files, "", "sdk/lib") +
+           rebase_path(sdk_bin_files, "", "sdk/bin") +
+           [
+             "sdk/lib/dart_client.platform",
+             "sdk/lib/dart_server.platform",
+             "sdk/lib/dart_shared.platform",
+             "$root_gen_dir/dart2js.dart.snapshot",
+             "$root_gen_dir/utils_wrapper.dart.snapshot",
+             "$root_gen_dir/pub.dart.snapshot",
+             "$root_gen_dir/dartanalyzer.dart.snapshot",
+             "$root_gen_dir/dartdevc.dart.snapshot",
+             "$root_gen_dir/dartfmt.dart.snapshot",
+             "$root_gen_dir/analysis_server.dart.snapshot",
+             "$root_gen_dir/dartdoc.dart.snapshot",
+             "$root_gen_dir/spec.sum",
+             "$root_gen_dir/strong.sum",
+             "tools/VERSION",
+           ]
 
   outputs = [
     "$root_out_dir/dart-sdk/README",
@@ -111,34 +121,33 @@
   ]
 }
 
-
 group("dart2js") {
   deps = [
-    "utils/compiler:dart2js"
+    "utils/compiler:dart2js",
   ]
 }
 
 group("dartanalyzer") {
   deps = [
-    "utils/dartanalyzer"
+    "utils/dartanalyzer",
   ]
 }
 
 group("dartdevc") {
   deps = [
-    "utils/dartdevc"
+    "utils/dartdevc",
   ]
 }
 
 group("dartfmt") {
   deps = [
-    "utils/dartfmt"
+    "utils/dartfmt",
   ]
 }
 
 group("analysis_server") {
   deps = [
-    "utils/analysis_server"
+    "utils/analysis_server",
   ]
 }
 
@@ -147,12 +156,12 @@
 # test suites.
 group("dart2js_bot") {
   deps = [
-    ":create_sdk"
+    ":create_sdk",
   ]
 }
 
 group("samples") {
   deps = [
-    "runtime/bin:sample_extension"
+    "runtime/bin:sample_extension",
   ]
 }
diff --git a/DEPS b/DEPS
index a9a71fb..cb26a1e 100644
--- a/DEPS
+++ b/DEPS
@@ -50,7 +50,7 @@
   "chrome_rev" : "@19997",
   "cli_util_tag" : "@0.0.1+3",
   "code_transformers_tag": "@v0.4.2+3",
-  "collection_tag": "@1.9.1",
+  "collection_tag": "@1.10.1",
   "convert_tag": "@2.0.1",
   "crypto_tag" : "@2.0.1",
   "csslib_tag" : "@0.13.2",
@@ -72,7 +72,7 @@
   "isolate_tag": "@0.2.3",
   "jinja2_rev": "@2222b31554f03e62600cd7e383376a7c187967a1",
   "json_rpc_2_tag": "@2.0.2",
-  "kernel_rev": "@1906e420431656d351a9f4ee9a36b8ca9a4da1db",
+  "kernel_rev": "@11edd6208940d227dc0b2cf87a6518d2508c0858",
   "linter_tag": "@0.1.28",
   "logging_tag": "@0.11.3+1",
   "markdown_tag": "@0.11.0",
diff --git a/build/config/BUILD.gn b/build/config/BUILD.gn
index 93243a1..418e7c1 100644
--- a/build/config/BUILD.gn
+++ b/build/config/BUILD.gn
@@ -5,15 +5,11 @@
 # Debug/release ----------------------------------------------------------------
 
 config("debug") {
-  defines = [
-    "DEBUG",
-  ]
+  defines = [ "DEBUG" ]
 }
 
 config("release") {
-  defines = [
-    "NDEBUG"
-  ]
+  defines = [ "NDEBUG" ]
 }
 
 config("product") {
diff --git a/build/config/android/config.gni b/build/config/android/config.gni
index fdabcb5..3346966 100644
--- a/build/config/android/config.gni
+++ b/build/config/android/config.gni
@@ -21,7 +21,7 @@
 
   # Defines the name the Android build gives to the current host CPU
   # architecture, which is different than the names GN uses.
-  if ((host_cpu == "x64") || (host_cpu == "x86")) {
+  if (host_cpu == "x64" || host_cpu == "x86") {
     android_host_arch = "x86_64"
   } else {
     assert(false, "Need Android toolchain support for your build CPU arch.")
diff --git a/build/config/arm.gni b/build/config/arm.gni
index 429a250..fa9934f1 100644
--- a/build/config/arm.gni
+++ b/build/config/arm.gni
@@ -8,7 +8,7 @@
     # platforms.
     if (current_cpu == "arm") {
       arm_version = 7
-    } else if(current_cpu == "arm64") {
+    } else if (current_cpu == "arm64") {
       arm_version = 8
     } else {
       assert(false, "Unconfigured arm version")
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index 873dc4c..52043c8 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -78,7 +78,7 @@
     cflags_objcc += common_flags
 
     # Linker warnings.
-    if ((current_cpu != "arm") && !is_mac) {
+    if (current_cpu != "arm" && !is_mac) {
       # TODO(jochen): Enable this on chromeos on arm. http://crbug.com/356580
       ldflags += [ "-Wl,--fatal-warnings" ]
     }
@@ -86,9 +86,7 @@
     # Common options for AddressSanitizer, LeakSanitizer, ThreadSanitizer and
     # MemorySanitizer
     if (using_sanitizer) {
-      cflags += [
-        "-gline-tables-only",
-      ]
+      cflags += [ "-gline-tables-only" ]
     }
     if (is_asan) {
       cflags += [ "-fsanitize=address" ]
@@ -199,7 +197,6 @@
         ]
       }
     } else if (current_cpu == "arm") {
-
       cflags += [
         "-march=$arm_arch",
         "-mfloat-abi=$arm_float_abi",
@@ -234,7 +231,7 @@
       if (is_debug || is_release) {
         cflags += [
           "-fexceptions",
-          "-funwind-tables"
+          "-funwind-tables",
         ]
       }
 
@@ -295,9 +292,7 @@
   # Linux/Android common flags setup.
   # ---------------------------------
   if (is_linux || is_android) {
-    cflags += [
-      "-fPIC",
-    ]
+    cflags += [ "-fPIC" ]
 
     ldflags += [
       "-fPIC",
@@ -511,6 +506,7 @@
   default_warning_flags += [
     # Permanent.
     "/wd4091",  # typedef warning from dbghelp.h
+
     # Investigate.
     "/wd4312",  # int to pointer of greater size conversion.
     "/wd4838",  # Narrowing conversion required.
diff --git a/build/config/mac/BUILD.gn b/build/config/mac/BUILD.gn
index 5825641..02aae66 100644
--- a/build/config/mac/BUILD.gn
+++ b/build/config/mac/BUILD.gn
@@ -5,9 +5,7 @@
 import("//build/config/sysroot.gni")
 
 config("sdk") {
-  common_flags = [
-    "-stdlib=libc++",
-  ]
+  common_flags = [ "-stdlib=libc++" ]
 
   cflags = common_flags
   ldflags = common_flags
@@ -20,7 +18,8 @@
     "-L.",
 
     # Forces shared libraries to search for undefined symbols.
-    "-undefined",  "dynamic_lookup",
+    "-undefined",
+    "dynamic_lookup",
 
     # Path for loading shared libraries for unbundled binaries.
     "-Wl,-rpath,@loader_path/.",
diff --git a/build/config/mac/mac_sdk.gni b/build/config/mac/mac_sdk.gni
index b2a89e5..e0a3abc 100644
--- a/build/config/mac/mac_sdk.gni
+++ b/build/config/mac/mac_sdk.gni
@@ -12,7 +12,10 @@
   mac_sdk_path = ""
 }
 
-find_sdk_args = [ "--print_sdk_path", mac_sdk_min ]
+find_sdk_args = [
+  "--print_sdk_path",
+  mac_sdk_min,
+]
 
 # The tool will print the SDK path on the first line, and the version on the
 # second line.
diff --git a/build/config/mac/rules.gni b/build/config/mac/rules.gni
index 66f0de4..54b5a6c 100644
--- a/build/config/mac/rules.gni
+++ b/build/config/mac/rules.gni
@@ -7,10 +7,8 @@
 template("code_sign_mac") {
   assert(defined(invoker.entitlements_path),
          "The path to the entitlements .xcent file")
-  assert(defined(invoker.identity),
-         "The code signing identity")
-  assert(defined(invoker.application_path),
-         "The application to code sign")
+  assert(defined(invoker.identity), "The code signing identity")
+  assert(defined(invoker.application_path), "The application to code sign")
   assert(defined(invoker.deps))
 
   action(target_name) {
@@ -23,7 +21,7 @@
     script = mac_app_script
 
     outputs = [
-      "$_application_path/_CodeSignature/CodeResources"
+      "$_application_path/_CodeSignature/CodeResources",
     ]
 
     args = [
@@ -41,12 +39,9 @@
 }
 
 template("process_nibs_mac") {
-  assert(defined(invoker.sources),
-         "The nib sources must be specified")
-  assert(defined(invoker.module),
-         "The nib module must be specified")
-  assert(defined(invoker.output_dir),
-         "The output directory must be specified")
+  assert(defined(invoker.sources), "The nib sources must be specified")
+  assert(defined(invoker.module), "The nib module must be specified")
+  assert(defined(invoker.output_dir), "The output directory must be specified")
 
   action_foreach(target_name) {
     sources = invoker.sources
@@ -56,7 +51,7 @@
     invoker_out_dir = invoker.output_dir
 
     outputs = [
-      "$root_build_dir/$invoker_out_dir/{{source_name_part}}.nib"
+      "$root_build_dir/$invoker_out_dir/{{source_name_part}}.nib",
     ]
 
     args = [
@@ -76,8 +71,7 @@
          "The source list of resources to copy over")
   assert(defined(invoker.bundle_directory),
          "The directory within the bundle to place the sources in")
-  assert(defined(invoker.app_name),
-         "The name of the application")
+  assert(defined(invoker.app_name), "The name of the application")
 
   _bundle_directory = invoker.bundle_directory
   _app_name = invoker.app_name
@@ -86,7 +80,9 @@
   copy(target_name) {
     set_sources_assignment_filter([])
     sources = _resources
-    outputs = [ "$root_build_dir/$_app_name.app/$_bundle_directory/Contents/Resources/{{source_file_part}}" ]
+    outputs = [
+      "$root_build_dir/$_app_name.app/$_bundle_directory/Contents/Resources/{{source_file_part}}",
+    ]
 
     if (defined(invoker.deps)) {
       deps = invoker.deps
@@ -95,7 +91,6 @@
 }
 
 template("mac_app") {
-
   assert(defined(invoker.deps),
          "Dependencies must be specified for $target_name")
   assert(defined(invoker.info_plist),
@@ -104,6 +99,7 @@
          "The name of Mac application for $target_name")
   assert(defined(invoker.xibs),
          "The list of XIB files must be specified for $target_name")
+
   # assert(defined(invoker.entitlements_path),
   #        "The entitlements path must be specified for $target_name")
   # assert(defined(invoker.code_signing_identity),
@@ -117,20 +113,20 @@
   struct_gen_target_name = target_name + "_struct"
 
   action(struct_gen_target_name) {
-
     script = mac_app_script
 
     sources = []
-    outputs = [ "$root_build_dir/$app_name.app" ]
+    outputs = [
+      "$root_build_dir/$app_name.app",
+    ]
 
     args = [
       "structure",
       "-d",
       rebase_path(root_build_dir),
       "-n",
-      app_name
+      app_name,
     ]
-
   }
 
   # Generate the executable
@@ -147,11 +143,14 @@
   plist_gen_target_name = target_name + "_plist"
 
   action(plist_gen_target_name) {
-
     script = mac_app_script
 
-    sources = [ invoker.info_plist ]
-    outputs = [ "$root_build_dir/plist/$app_name/Info.plist" ]
+    sources = [
+      invoker.info_plist,
+    ]
+    outputs = [
+      "$root_build_dir/plist/$app_name/Info.plist",
+    ]
 
     args = [
       "plist",
@@ -171,7 +170,7 @@
     ]
 
     outputs = [
-      "$root_build_dir/$app_name.app/Contents/{{source_file_part}}"
+      "$root_build_dir/$app_name.app/Contents/{{source_file_part}}",
     ]
 
     deps = [
@@ -186,7 +185,7 @@
     ]
 
     outputs = [
-      "$root_build_dir/$app_name.app/Contents/MacOS/{{source_file_part}}"
+      "$root_build_dir/$app_name.app/Contents/MacOS/{{source_file_part}}",
     ]
 
     deps = [
@@ -204,17 +203,18 @@
   copy_all_target_name = target_name + "_all_copy"
   group(copy_all_target_name) {
     deps = [
-      ":$struct_gen_target_name",
-      ":$copy_plist_gen_target_name",
       ":$copy_bin_target_name",
+      ":$copy_plist_gen_target_name",
       ":$copy_xib_target_name",
+      ":$struct_gen_target_name",
     ]
   }
 
   # Top level group
 
   group(target_name) {
-    deps = [ ":$copy_all_target_name" ]
+    deps = [
+      ":$copy_all_target_name",
+    ]
   }
-
 }
diff --git a/build/config/templates/templates.gni b/build/config/templates/templates.gni
index ae00fca..72d09c0 100644
--- a/build/config/templates/templates.gni
+++ b/build/config/templates/templates.gni
@@ -23,25 +23,28 @@
     testonly = invoker.testonly
   }
 
-  assert(defined(invoker.input),
-      "The input file must be specified")
-  assert(defined(invoker.output),
-      "The output file must be specified")
+  assert(defined(invoker.input), "The input file must be specified")
+  assert(defined(invoker.output), "The output file must be specified")
   assert(defined(invoker.variables),
-      "The variable used for substitution in templates must be specified")
+         "The variable used for substitution in templates must be specified")
 
   variables = invoker.variables
 
   action(target_name) {
-    if(defined(invoker.visibility)) {
+    if (defined(invoker.visibility)) {
       visibility = invoker.visibility
     }
 
     script = "//build/android/gyp/jinja_template.py"
     depfile = "$target_gen_dir/$target_name.d"
 
-    sources = [ invoker.input ]
-    outputs = [ invoker.output, depfile ]
+    sources = [
+      invoker.input,
+    ]
+    outputs = [
+      invoker.output,
+      depfile,
+    ]
 
     args = [
       "--inputs",
@@ -50,7 +53,7 @@
       rebase_path(invoker.output, root_build_dir),
       "--depfile",
       rebase_path(depfile, root_build_dir),
-      "--variables=${variables}"
+      "--variables=${variables}",
     ]
   }
 }
diff --git a/build/toolchain/gcc_toolchain.gni b/build/toolchain/gcc_toolchain.gni
index ecdad86..1175334 100644
--- a/build/toolchain/gcc_toolchain.gni
+++ b/build/toolchain/gcc_toolchain.gni
@@ -201,7 +201,8 @@
       command = "$ld {{ldflags}} -o $unstripped_outfile -Wl,--start-group @$rspfile {{solibs}} -Wl,--end-group $libs_section_prefix {{libs}} $libs_section_postfix"
       if (defined(invoker.strip)) {
         strip = invoker.strip
-        strip_command = "${strip} --strip-unneeded -o $outfile $unstripped_outfile"
+        strip_command =
+            "${strip} --strip-unneeded -o $outfile $unstripped_outfile"
         command += " && " + strip_command
       }
       if (defined(invoker.postlink)) {
diff --git a/build/toolchain/linux/BUILD.gn b/build/toolchain/linux/BUILD.gn
index ae090b0..265eea9 100644
--- a/build/toolchain/linux/BUILD.gn
+++ b/build/toolchain/linux/BUILD.gn
@@ -22,13 +22,13 @@
 }
 
 gcc_toolchain("arm") {
-  cc = "${compiler_prefix}arm-linux-gnueabi-gcc"
-  cxx = "${compiler_prefix}arm-linux-gnueabi-g++"
+  cc = "${compiler_prefix}arm-linux-gnueabihf-gcc"
+  cxx = "${compiler_prefix}arm-linux-gnueabihf-g++"
 
-  ar = "arm-linux-gnueabi-ar"
+  ar = "arm-linux-gnueabihf-ar"
   ld = cxx
-  readelf = "arm-linux-gnueabi-readelf"
-  nm = "arm-linux-gnueabi-nm"
+  readelf = "arm-linux-gnueabihf-readelf"
+  nm = "arm-linux-gnueabihf-nm"
 
   toolchain_cpu = "arm"
   toolchain_os = "linux"
diff --git a/build/win/use_ansi_codes.py b/build/win/use_ansi_codes.py
index cff5f43..b24ae24 100755
--- a/build/win/use_ansi_codes.py
+++ b/build/win/use_ansi_codes.py
@@ -2,7 +2,7 @@
 # Copyright (c) 2015 The Chromium Authors. All rights reserved.
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
-"""Prints if the the terminal is likely to understand ANSI codes."""
+"""Prints if the terminal is likely to understand ANSI codes."""
 
 import os
 
diff --git a/dart.gyp b/dart.gyp
index c24fbc7..1bbf75e 100644
--- a/dart.gyp
+++ b/dart.gyp
@@ -30,6 +30,7 @@
         'runtime/dart-runtime.gyp:process_test',
         'runtime/dart-runtime.gyp:test_extension',
         'runtime/dart-runtime.gyp:sample_extension',
+        'runtime/dart-runtime.gyp:generate_patched_sdk#host',
       ],
     },
     {
@@ -41,6 +42,7 @@
       'dependencies': [
         'runtime/dart-runtime.gyp:dart_precompiled_runtime',
         'runtime/dart-runtime.gyp:dart_bootstrap#host',
+        'runtime/dart-runtime.gyp:generate_patched_sdk#host',
       ],
     },
     {
@@ -57,8 +59,10 @@
         'runtime/dart-runtime.gyp:process_test',
         'runtime/dart-runtime.gyp:test_extension',
         'runtime/dart-runtime.gyp:sample_extension',
+        'runtime/dart-runtime.gyp:generate_patched_sdk#host',
       ],
     },
+
     {
       'target_name': 'create_sdk',
       'type': 'none',
diff --git a/docs/language/dartLangSpec.tex b/docs/language/dartLangSpec.tex
index d0f62f2..c3aa30a 100644
--- a/docs/language/dartLangSpec.tex
+++ b/docs/language/dartLangSpec.tex
@@ -5970,7 +5970,10 @@
 }
 
 \LMHash{}
-It is a static warning if the type of $e$ may not be assigned to the type of $e_k$. It is a static warning if the last statement of the statement sequence $s_k$ is not a \BREAK{}, \CONTINUE{}, \RETURN{} or \THROW{} statement.
+It is a static warning if the type of $e$ may not be assigned to the type of $e_k$.
+Let $s$ be the last statement of the statement sequence $s_k$.
+If $s$ is a non-empty block statement, let $s$ instead be the last statment of the block statement.
+It is a static warning $s$ is not a \BREAK{}, \CONTINUE{}, \RETHROW{} or \RETURN{} statement or an expression statment where the expression is a \THROW{} expression.
 
 \rationale{
 The behavior of switch cases intentionally differs from the C tradition.  Implicit fall through is a known cause of programming errors and therefore disallowed.  Why not simply break the flow implicitly at the end of every case, rather than requiring explicit code to do so?  This would indeed be cleaner.  It would also be cleaner to insist that each case have a single (possibly compound) statement.  We have chosen not to do so in order to facilitate porting of switch statements from other languages.  Implicitly breaking the control flow at the end of a case would silently alter the meaning of ported code that relied on fall-through, potentially forcing the programmer to deal with subtle bugs. Our design ensures that the difference is immediately brought to the coder's attention.  The programmer will be notified at compile-time if they forget to end a case with a statement that terminates the straight-line control flow. We could make this warning a compile-time error, but refrain from doing so because do not wish to force the programmer to deal with this issue immediately while porting code.  If developers ignore the warning and run their code, a run time error will prevent the program from misbehaving in hard-to-debug ways (at least with respect to this issue).
diff --git a/pkg/BUILD.gn b/pkg/BUILD.gn
index 8dc602f..e1ce11d 100644
--- a/pkg/BUILD.gn
+++ b/pkg/BUILD.gn
@@ -54,17 +54,12 @@
   stamp2_outputs = get_target_outputs(":make_third_party_pkg_files_2_stamp")
   stamp3_outputs = get_target_outputs(":make_third_party_pkg_files_3_stamp")
 
-  inputs = stamp0_outputs +
-           stamp1_outputs +
-           stamp2_outputs +
-           stamp3_outputs
+  inputs = stamp0_outputs + stamp1_outputs + stamp2_outputs + stamp3_outputs
 
   outputs = [
-    "$root_gen_dir/pkg_files.stamp"
+    "$root_gen_dir/pkg_files.stamp",
   ]
 
   script = "../tools/create_timestamp_file.py"
-  args = [
-    rebase_path("$root_gen_dir/pkg_files.stamp"),
-  ]
+  args = [ rebase_path("$root_gen_dir/pkg_files.stamp") ]
 }
diff --git a/pkg/analyzer/lib/src/dart/analysis/driver.dart b/pkg/analyzer/lib/src/dart/analysis/driver.dart
index 6114222..6677376 100644
--- a/pkg/analyzer/lib/src/dart/analysis/driver.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/driver.dart
@@ -14,7 +14,6 @@
 import 'package:analyzer/src/context/context.dart';
 import 'package:analyzer/src/context/source.dart';
 import 'package:analyzer/src/dart/analysis/byte_store.dart';
-import 'package:analyzer/src/dart/error/todo_codes.dart';
 import 'package:analyzer/src/dart/scanner/reader.dart';
 import 'package:analyzer/src/dart/scanner/scanner.dart';
 import 'package:analyzer/src/generated/engine.dart'
@@ -23,7 +22,6 @@
 import 'package:analyzer/src/generated/source.dart';
 import 'package:analyzer/src/generated/utilities_dart.dart';
 import 'package:analyzer/src/summary/api_signature.dart';
-import 'package:analyzer/src/summary/flat_buffers.dart' as fb;
 import 'package:analyzer/src/summary/format.dart';
 import 'package:analyzer/src/summary/idl.dart';
 import 'package:analyzer/src/summary/link.dart';
@@ -110,24 +108,37 @@
   PackageBundle _sdkBundle;
 
   /**
-   * The mapping from the files for which analysis was requested using
-   * [getResult] to the [Completer]s to report the result.
-   */
-  final _requestedFiles = <String, Completer<AnalysisResult>>{};
-
-  /**
    * The set of explicitly analyzed files.
    */
   final _explicitFiles = new LinkedHashSet<String>();
 
   /**
+   * The set of priority files, that should be analyzed sooner.
+   */
+  final _priorityFiles = new LinkedHashSet<String>();
+
+  /**
+   * The mapping from the files for which analysis was requested using
+   * [getResult] to the [Completer]s to report the result.
+   */
+  final _requestedFiles = <String, List<Completer<AnalysisResult>>>{};
+
+  /**
+   * The set of files were reported as changed through [changeFile] and not
+   * checked for actual changes yet.
+   */
+  final _changedFiles = new LinkedHashSet<String>();
+
+  /**
    * The set of files that are currently scheduled for analysis.
    */
   final _filesToAnalyze = new LinkedHashSet<String>();
 
   /**
-   * The mapping of [Uri]s to the mapping of textual URIs to the [Source]
-   * that correspond in the current [_sourceFactory].
+   * Cache of URI resolution. The outer map key is the absolute URI of the
+   * containing file. The inner map key is the URI text of a directive
+   * contained in that file. The inner map value is the [Source] object which
+   * that URI text resolves to.
    */
   final _uriResolutionCache = <Uri, Map<String, Source>>{};
 
@@ -139,18 +150,36 @@
   final _fileContentHashMap = <String, String>{};
 
   /**
-   * Mapping from library URIs to the linked hash of the library.
+   * The API signatures corresponding to [_fileContentHashMap].
+   *
+   * It maps file paths to the unlinked API signatures.
    */
-  final _linkedHashMap = <Uri, String>{};
+  final _fileApiSignatureMap = <String, String>{};
 
   /**
-   * TODO(scheglov) document and improve
+   * Mapping from library URIs to the dependency signature of the library.
    */
-  final _hasWorkStreamController = new StreamController<String>();
+  final _dependencySignatureMap = <Uri, String>{};
+
+  /**
+   * The monitor that is signalled when there is work to do.
+   */
+  final _Monitor _hasWork = new _Monitor();
+
+  /**
+   * The controller for the [status] stream.
+   */
+  final _statusController = new StreamController<AnalysisStatus>();
+
+  /**
+   * The last status sent to the [status] stream.
+   */
+  AnalysisStatus _currentStatus = AnalysisStatus.IDLE;
 
   AnalysisDriver(this._logger, this._resourceProvider, this._byteStore,
-      this._contentCache, this._sourceFactory, this._analysisOptions) {
-    _sdkBundle = _sourceFactory.dartSdk.getLinkedBundle();
+      this._contentCache, SourceFactory sourceFactory, this._analysisOptions)
+      : _sourceFactory = sourceFactory.clone() {
+    _sdkBundle = sourceFactory.dartSdk.getLinkedBundle();
   }
 
   /**
@@ -163,7 +192,10 @@
    * between priority files, nor between priority and non-priority files.
    */
   void set priorityFiles(List<String> priorityPaths) {
-    // TODO(scheglov) implement
+    _priorityFiles.clear();
+    _priorityFiles.addAll(priorityPaths);
+    _transitionToAnalyzing();
+    _hasWork.notify();
   }
 
   /**
@@ -176,8 +208,11 @@
    * "analyzing" and an analysis result is produced for every added file prior
    * to the next time the analysis state transitions to "idle".
    *
-   * Invocation of [addFile] or [changeFile] might result in producing more
-   * analysis results that reflect the new current file state.
+   * At least one analysis result is produced for every file passed to
+   * [addFile] or [changeFile] prior to the next time the analysis state
+   * transitions to "idle", unless the file is later removed from analysis
+   * using [removeFile]. Analysis results for other files are produced only if
+   * the changes affect analysis results of other files.
    *
    * More than one result might be produced for the same file, even if the
    * client does not change the state of the files.
@@ -187,23 +222,72 @@
    */
   Stream<AnalysisResult> get results async* {
     try {
+      PerformanceLogSection analysisSection = null;
       while (true) {
-        // TODO(scheglov) implement state transitioning
-        await for (String why in _hasWorkStreamController.stream) {
-          // Analyze the first file in the general queue.
-          if (_filesToAnalyze.isNotEmpty) {
-            _logger.runTimed('Analyzed ${_filesToAnalyze.length} files', () {
-              while (_filesToAnalyze.isNotEmpty) {
-                String path = _filesToAnalyze.first;
-                _filesToAnalyze.remove(path);
-                _File file = _fileForPath(path);
-                _computeAndPrintErrors(file);
-                // TODO(scheglov) yield the result
-              }
-            });
+        await _hasWork.signal;
+
+        if (analysisSection == null) {
+          analysisSection = _logger.enter('Analyzing');
+        }
+
+        // Verify all changed files one at a time.
+        if (_changedFiles.isNotEmpty) {
+          String path = _removeFirst(_changedFiles);
+          _verifyApiSignatureOfChangedFile(path);
+          // Repeat the processing loop.
+          _hasWork.notify();
+          continue;
+        }
+
+        // Analyze a requested file.
+        if (_requestedFiles.isNotEmpty) {
+          String path = _requestedFiles.keys.first;
+          AnalysisResult result = _computeAnalysisResult(path, withUnit: true);
+          // Notify the completers.
+          _requestedFiles.remove(path).forEach((completer) {
+            completer.complete(result);
+          });
+          // Remove from to be analyzed and produce it now.
+          _filesToAnalyze.remove(path);
+          yield result;
+          // Repeat the processing loop.
+          _hasWork.notify();
+          continue;
+        }
+
+        // Analyze a priority file.
+        if (_priorityFiles.isNotEmpty) {
+          bool analyzed = false;
+          for (String path in _priorityFiles) {
+            if (_filesToAnalyze.remove(path)) {
+              analyzed = true;
+              AnalysisResult result =
+                  _computeAnalysisResult(path, withUnit: true);
+              yield result;
+              break;
+            }
+          }
+          // Repeat the processing loop.
+          if (analyzed) {
+            _hasWork.notify();
+            continue;
           }
         }
-        // TODO(scheglov) implement
+
+        // Analyze a general file.
+        if (_filesToAnalyze.isNotEmpty) {
+          String path = _removeFirst(_filesToAnalyze);
+          AnalysisResult result = _computeAnalysisResult(path, withUnit: false);
+          yield result;
+          // Repeat the processing loop.
+          _hasWork.notify();
+          continue;
+        }
+
+        // There is nothing to do.
+        analysisSection.exit();
+        analysisSection = null;
+        _transitionToIdle();
       }
     } finally {
       print('The stream was cancelled.');
@@ -211,6 +295,11 @@
   }
 
   /**
+   * Return the stream that produces [AnalysisStatus] events.
+   */
+  Stream<AnalysisStatus> get status => _statusController.stream;
+
+  /**
    * Add the file with the given [path] to the set of files to analyze.
    *
    * The [path] must be absolute and normalized.
@@ -220,7 +309,8 @@
   void addFile(String path) {
     _explicitFiles.add(path);
     _filesToAnalyze.add(path);
-    _hasWorkStreamController.add('do it!');
+    _transitionToAnalyzing();
+    _hasWork.notify();
   }
 
   /**
@@ -242,13 +332,12 @@
    * [changeFile] invocation.
    */
   void changeFile(String path) {
-    // TODO(scheglov) Don't clear, schedule API signature validation.
-    _fileContentHashMap.clear();
-    _linkedHashMap.clear();
-    _filesToAnalyze.add(path);
-    _filesToAnalyze.addAll(_explicitFiles);
-    // TODO(scheglov) name?!
-    _hasWorkStreamController.add('do it!');
+    _changedFiles.add(path);
+    if (_explicitFiles.contains(path)) {
+      _filesToAnalyze.add(path);
+    }
+    _transitionToAnalyzing();
+    _hasWork.notify();
   }
 
   /**
@@ -267,7 +356,11 @@
    */
   Future<AnalysisResult> getResult(String path) {
     var completer = new Completer<AnalysisResult>();
-    _requestedFiles[path] = completer;
+    _requestedFiles
+        .putIfAbsent(path, () => <Completer<AnalysisResult>>[])
+        .add(completer);
+    _transitionToAnalyzing();
+    _hasWork.notify();
     return completer.future;
   }
 
@@ -286,101 +379,104 @@
   }
 
   /**
-   * TODO(scheglov) replace with actual [AnalysisResult] computing.
+   * TODO(scheglov) see [_addToStoreUnlinked]
    */
-  List<String> _computeAndPrintErrors(_File file) {
-    // TODO(scheglov) Computing resolved unit fails for these units.
-    // pkg/analyzer/lib/plugin/embedded_resolver_provider.dart
-    // pkg/analyzer/lib/plugin/embedded_resolver_provider.dart
-    if (file.path.endsWith(
-            'pkg/analyzer/lib/plugin/embedded_resolver_provider.dart') ||
-        file.path.endsWith('pkg/analyzer/lib/source/embedder.dart') ||
-        file.path.endsWith('pkg/analyzer/lib/src/generated/ast.dart') ||
-        file.path.endsWith('pkg/analyzer/lib/src/generated/element.dart') ||
-        file.path
-            .endsWith('pkg/analyzer/lib/src/generated/element_handle.dart') ||
-        file.path.endsWith('pkg/analyzer/lib/src/generated/error.dart') ||
-        file.path.endsWith('pkg/analyzer/lib/src/generated/scanner.dart') ||
-        file.path.endsWith('pkg/analyzer/lib/src/generated/sdk_io.dart') ||
-        file.path.endsWith('pkg/analyzer/lib/src/generated/visitors.dart') ||
-        file.path.endsWith('pkg/analyzer/test/generated/constant_test.dart') ||
-        file.path.endsWith('pkg/analyzer/test/source/embedder_test.dart')) {
-      return [];
+  void _addToStoreLinked(
+      SummaryDataStore store, String uri, LinkedLibrary linked) {
+    store.linkedMap[uri] = linked;
+  }
+
+  /**
+   * TODO(scheglov) The existing [SummaryDataStore.addBundle] uses
+   * [PackageBundle.unlinkedUnitUris] to add [PackageBundle.unlinkedUnits].
+   * But we store unlinked bundles with the hash of the file content. This
+   * means that when two files are the same, but have different URIs, we
+   * add [UnlinkedUnit] with wrong URI.
+   *
+   * We need to clean this up.
+   */
+  void _addToStoreUnlinked(
+      SummaryDataStore store, String uri, UnlinkedUnit unlinked) {
+    store.unlinkedMap[uri] = unlinked;
+  }
+
+  /**
+   * Return the cached or newly computed analysis result of the file with the
+   * given [path].
+   *
+   * The result will have the fully resolved unit and will always be newly
+   * compute only if [withUnit] is `true`.
+   */
+  AnalysisResult _computeAnalysisResult(String path, {bool withUnit: false}) {
+    Source source = _sourceForPath(path);
+
+    // If we don't need the fully resolved unit, check for the cached result.
+    if (!withUnit) {
+      _File file = new _File.forLinking(this, source);
+      // Prepare the key for the cached result.
+      String key = _getResolvedUnitKey(file);
+      if (key == null) {
+        _logger.run('Compute the dependency hash for $source', () {
+          _createLibraryContext(file);
+          key = _getResolvedUnitKey(file);
+        });
+      }
+      // Check for the cached result.
+      AnalysisResult result = _getCachedAnalysisResult(file, key);
+      if (result != null) {
+        return result;
+      }
     }
 
-    List<String> errorStrings = _logger.run('Compute errors $file', () {
-      LibraryContext libraryContext = _createLibraryContext(file);
-
-      String errorsKey;
-      {
-        ApiSignature signature = new ApiSignature();
-        signature.addString(libraryContext.node.linkedHash);
-        signature.addString(file.contentHash);
-        errorsKey = '${signature.toHex()}.errors';
-      }
-
-      {
-        List<int> bytes = _byteStore.get(errorsKey);
-        if (bytes != null) {
-          fb.BufferContext bp = new fb.BufferContext.fromBytes(bytes);
-          int table = bp.derefObject(0);
-          return const fb.ListReader<String>(const fb.StringReader())
-              .vTableGet(bp, table, 0);
-        }
-      }
-
+    // We need the fully resolved unit, or the result is not cached.
+    return _logger.run('Compute analysis result for $source', () {
+      // Still no result, compute and store it.
+      _File file = new _File.forResolution(this, source);
+      _LibraryContext libraryContext = _createLibraryContext(file);
       AnalysisContext analysisContext = _createAnalysisContext(libraryContext);
-      analysisContext.setContents(file.source, file.content);
       try {
-        // Compute resolved unit.
-//        _logger.runTimed('Computed resolved unit', () {
-//          analysisContext.resolveCompilationUnit2(
-//              libraryContext.file.source, libraryContext.file.source);
-//        });
-        // Compute errors.
-        List<AnalysisError> errors;
-        try {
-          errors = _logger.runTimed('Computed errors', () {
-            return analysisContext.computeErrors(file.source);
-          });
-        } catch (e, st) {
-          // TODO(scheglov) why does it fail?
-          // Caused by Bad state: Unmatched TypeParameterElementImpl T
-          errors = [];
-        }
-        List<String> errorStrings = errors
-            .where((error) => error.errorCode is! TodoCode)
-            .map((error) => error.toString())
-            .toList();
+        analysisContext.setContents(file.source, file.content);
+        // TODO(scheglov) Add support for parts.
+        CompilationUnit resolvedUnit = withUnit
+            ? analysisContext.resolveCompilationUnit2(file.source, file.source)
+            : null;
+        List<AnalysisError> errors = analysisContext.computeErrors(file.source);
+
+        // Store the result into the cache.
         {
-          fb.Builder fbBuilder = new fb.Builder();
-          var exportedOffset = fbBuilder.writeList(errorStrings
-              .map((errorStr) => fbBuilder.writeString(errorStr))
-              .toList());
-          fbBuilder.startTable();
-          fbBuilder.addOffset(0, exportedOffset);
-          var offset = fbBuilder.endTable();
-          List<int> bytes = fbBuilder.finish(offset, 'CErr');
-          _byteStore.put(errorsKey, bytes);
+          List<int> bytes = new AnalysisDriverResolvedUnitBuilder(
+                  errors: errors
+                      .map((error) => new AnalysisDriverUnitErrorBuilder(
+                          offset: error.offset,
+                          length: error.length,
+                          uniqueName: error.errorCode.uniqueName,
+                          message: error.message,
+                          correction: error.correction))
+                      .toList())
+              .toBuffer();
+          String key = _getResolvedUnitKey(file);
+          _byteStore.put(key, bytes);
         }
 
-        return errorStrings;
+        // Return the result, full or partial.
+        _logger.writeln('Computed new analysis result.');
+        return new AnalysisResult(
+            file.path,
+            file.uri,
+            withUnit ? file.content : null,
+            file.contentHash,
+            resolvedUnit,
+            errors);
       } finally {
         analysisContext.dispose();
       }
     });
-
-    if (errorStrings.isNotEmpty) {
-      errorStrings.forEach((errorString) => print('\t$errorString'));
-    } else {
-      print('\tNO ERRORS');
-    }
-    return errorStrings;
   }
 
-  AnalysisContext _createAnalysisContext(LibraryContext libraryContext) {
+  AnalysisContext _createAnalysisContext(_LibraryContext libraryContext) {
     AnalysisContextImpl analysisContext =
         AnalysisEngine.instance.createAnalysisContext();
+    analysisContext.analysisOptions = _analysisOptions;
 
     analysisContext.sourceFactory =
         new SourceFactory((_sourceFactory as SourceFactoryImpl).resolvers);
@@ -392,35 +488,49 @@
   }
 
   /**
-   * Return the content in which the library represented by the given
+   * Return the context in which the library represented by the given
    * [libraryFile] should be analyzed it.
    *
-   * TODO(scheglov) We often don't need [SummaryDataStore], only linked hash.
+   * TODO(scheglov) We often don't need [SummaryDataStore], only dependency
+   * signature.
    */
-  LibraryContext _createLibraryContext(_File libraryFile) {
-    Map<String, _LibraryNode> nodes = <String, _LibraryNode>{};
-
+  _LibraryContext _createLibraryContext(_File libraryFile) {
     return _logger.run('Create library context', () {
+      Map<String, _LibraryNode> nodes = <String, _LibraryNode>{};
       SummaryDataStore store = new SummaryDataStore(const <String>[]);
       store.addBundle(null, _sdkBundle);
 
-      void createLibraryNodes(_File libraryFile) {
+      _LibraryNode createLibraryNodes(_File libraryFile) {
         Uri libraryUri = libraryFile.uri;
-        if (libraryUri.scheme == 'dart') {
-          return;
-        }
-        String uriStr = libraryUri.toString();
-        if (!nodes.containsKey(uriStr)) {
-          _LibraryNode node = new _LibraryNode(this, nodes, libraryUri);
-          nodes[uriStr] = node;
-          ReferencedUris referenced = _getReferencedUris(libraryFile);
 
-          // Append unlinked bundles.
+        // URIs with the 'dart:' scheme are served from the SDK bundle.
+        if (libraryUri.scheme == 'dart') {
+          return null;
+        }
+
+        String libraryUriStr = libraryUri.toString();
+        _LibraryNode node = nodes[libraryUriStr];
+        if (node == null) {
+          node = new _LibraryNode(this, nodes, libraryUri);
+          nodes[libraryUriStr] = node;
+
+          // Append the defining unit.
+          _ReferencedUris referenced;
+          {
+            PackageBundle bundle = libraryFile.unlinked;
+            UnlinkedUnit unlinked = bundle.unlinkedUnits.single;
+            referenced = new _ReferencedUris(unlinked);
+            node.unlinkedBundles.add(bundle);
+            _addToStoreUnlinked(store, libraryUriStr, unlinked);
+          }
+
+          // Append parts.
           for (String uri in referenced.parted) {
             _File file = libraryFile.resolveUri(uri);
-            PackageBundle unlinked = _getUnlinked(file);
-            node.unlinkedBundles.add(unlinked);
-            store.addBundle(null, unlinked);
+            PackageBundle bundle = file.unlinked;
+            UnlinkedUnit unlinked = bundle.unlinkedUnits.single;
+            node.unlinkedBundles.add(bundle);
+            _addToStoreUnlinked(store, file.uri.toString(), unlinked);
           }
 
           // Create nodes for referenced libraries.
@@ -433,31 +543,34 @@
             createLibraryNodes(file);
           }
         }
+
+        // Done with this node.
+        return node;
       }
 
-      _logger.runTimed2(() {
-        createLibraryNodes(libraryFile);
-      }, () => 'Computed ${nodes.length} nodes');
-      _LibraryNode libraryNode = nodes[libraryFile.uri.toString()];
+      _LibraryNode libraryNode = _logger.run('Compute library nodes', () {
+        return createLibraryNodes(libraryFile);
+      });
 
       Set<String> libraryUrisToLink = new Set<String>();
-      int numberOfNodesWithLinked = 0;
-      _logger.runTimed2(() {
+      _logger.run('Load linked bundles', () {
         for (_LibraryNode node in nodes.values) {
-          String key = '${node.linkedHash}.linked';
+          String key = '${node.dependencySignature}.linked';
           List<int> bytes = _byteStore.get(key);
           if (bytes != null) {
             PackageBundle linked = new PackageBundle.fromBuffer(bytes);
-            store.addBundle(null, linked);
-            numberOfNodesWithLinked++;
+            _addToStoreLinked(
+                store, node.uri.toString(), linked.linkedLibraries.single);
           } else {
             libraryUrisToLink.add(node.uri.toString());
           }
         }
-      }, () => 'Loaded $numberOfNodesWithLinked linked bundles');
+        int numOfLoaded = nodes.length - libraryUrisToLink.length;
+        _logger.writeln('Loaded $numOfLoaded linked bundles.');
+      });
 
       Map<String, LinkedLibraryBuilder> linkedLibraries = {};
-      _logger.runTimed2(() {
+      _logger.run('Link bundles', () {
         linkedLibraries = link(libraryUrisToLink, (String uri) {
           LinkedLibrary linkedLibrary = store.linkedMap[uri];
           if (linkedLibrary == null) {
@@ -471,11 +584,12 @@
           }
           return unlinkedUnit;
         }, (_) => null, _analysisOptions.strongMode);
-      }, () => 'Linked ${linkedLibraries.length} bundles');
+        _logger.writeln('Linked ${linkedLibraries.length} bundles.');
+      });
 
       linkedLibraries.forEach((uri, linkedBuilder) {
         _LibraryNode node = nodes[uri];
-        String key = '${node.linkedHash}.linked';
+        String key = '${node.dependencySignature}.linked';
         List<int> bytes;
         {
           PackageBundleAssembler assembler = new PackageBundleAssembler();
@@ -483,130 +597,115 @@
           bytes = assembler.assemble().toBuffer();
         }
         PackageBundle linked = new PackageBundle.fromBuffer(bytes);
-        store.addBundle(null, linked);
+        _addToStoreLinked(store, uri, linked.linkedLibraries.single);
         _byteStore.put(key, bytes);
       });
 
-      return new LibraryContext(libraryFile, libraryNode, store);
+      return new _LibraryContext(libraryFile, libraryNode, store);
     });
   }
 
   /**
-   * Return the [_File] for the given [path] in [_sourceFactory].
+   * If we know the result [key] for the [file], try to load the analysis
+   * result from the cache. Return `null` if not found.
    */
-  _File _fileForPath(String path) {
+  AnalysisResult _getCachedAnalysisResult(_File file, String key) {
+    List<int> bytes = _byteStore.get(key);
+    if (bytes != null) {
+      var unit = new AnalysisDriverResolvedUnit.fromBuffer(bytes);
+      List<AnalysisError> errors = unit.errors
+          .map((error) => new AnalysisError.forValues(
+              file.source,
+              error.offset,
+              error.length,
+              ErrorCode.byUniqueName(error.uniqueName),
+              error.message,
+              error.correction))
+          .toList();
+      return new AnalysisResult(
+          file.path, file.uri, null, file.contentHash, null, errors);
+    }
+    return null;
+  }
+
+  /**
+   * Return the key to store fully resolved results for the [file] into the
+   * cache. Return `null` if the dependency signature is not known yet.
+   */
+  String _getResolvedUnitKey(_File file) {
+    String dependencyHash = _dependencySignatureMap[file.uri];
+    if (dependencyHash != null) {
+      ApiSignature signature = new ApiSignature();
+      signature.addString(dependencyHash);
+      signature.addString(file.contentHash);
+      return '${signature.toHex()}.resolved';
+    }
+    return null;
+  }
+
+  /**
+   * Return the [Source] for the given [path] in [_sourceFactory].
+   */
+  Source _sourceForPath(String path) {
     Source fileSource = _resourceProvider.getFile(path).createSource();
     Uri uri = _sourceFactory.restoreUri(fileSource);
-    Source source = _resourceProvider.getFile(path).createSource(uri);
-    return new _File(this, source);
+    return _resourceProvider.getFile(path).createSource(uri);
   }
 
   /**
-   * TODO(scheglov) It would be nice to get URIs of "parts" from unlinked.
+   * Send a notifications to the [status] stream that the driver started
+   * analyzing.
    */
-  ReferencedUris _getReferencedUris(_File file) {
-    // Try to get from the store.
-    {
-      String key = '${file.contentHash}.uris';
-      List<int> bytes = _byteStore.get(key);
-      if (bytes != null) {
-        fb.BufferContext bp = new fb.BufferContext.fromBytes(bytes);
-        int table = bp.derefObject(0);
-        const fb.ListReader<String> stringListReader =
-            const fb.ListReader<String>(const fb.StringReader());
-        bool isLibrary = const fb.BoolReader().vTableGet(bp, table, 0);
-        List<String> imported = stringListReader.vTableGet(bp, table, 1);
-        List<String> exported = stringListReader.vTableGet(bp, table, 2);
-        List<String> parted = stringListReader.vTableGet(bp, table, 3);
-        ReferencedUris referencedUris = new ReferencedUris();
-        referencedUris.isLibrary = isLibrary;
-        referencedUris.imported.addAll(imported);
-        referencedUris.exported.addAll(exported);
-        referencedUris.parted.addAll(parted);
-        return referencedUris;
-      }
+  void _transitionToAnalyzing() {
+    if (_currentStatus != AnalysisStatus.ANALYZING) {
+      _currentStatus = AnalysisStatus.ANALYZING;
+      _statusController.add(AnalysisStatus.ANALYZING);
     }
-
-    // Compute URIs.
-    ReferencedUris referencedUris = new ReferencedUris();
-    referencedUris.parted.add(file.uri.toString());
-    for (Directive directive in file.unit.directives) {
-      if (directive is PartOfDirective) {
-        referencedUris.isLibrary = false;
-      } else if (directive is UriBasedDirective) {
-        String uri = directive.uri.stringValue;
-        if (directive is ImportDirective) {
-          referencedUris.imported.add(uri);
-        } else if (directive is ExportDirective) {
-          referencedUris.exported.add(uri);
-        } else if (directive is PartDirective) {
-          referencedUris.parted.add(uri);
-        }
-      }
-    }
-
-    // Serialize into bytes.
-    List<int> bytes;
-    {
-      fb.Builder fbBuilder = new fb.Builder();
-      var importedOffset = fbBuilder.writeList(referencedUris.imported
-          .map((uri) => fbBuilder.writeString(uri))
-          .toList());
-      var exportedOffset = fbBuilder.writeList(referencedUris.exported
-          .map((uri) => fbBuilder.writeString(uri))
-          .toList());
-      var partedOffset = fbBuilder.writeList(referencedUris.parted
-          .map((uri) => fbBuilder.writeString(uri))
-          .toList());
-      fbBuilder.startTable();
-      fbBuilder.addBool(0, referencedUris.isLibrary);
-      fbBuilder.addOffset(1, importedOffset);
-      fbBuilder.addOffset(2, exportedOffset);
-      fbBuilder.addOffset(3, partedOffset);
-      var offset = fbBuilder.endTable();
-      bytes = fbBuilder.finish(offset, 'SoRU');
-    }
-
-    // We read the content and recomputed the hash.
-    // So, we need to update the key.
-    String key = '${file.contentHash}.uris';
-    _byteStore.put(key, bytes);
-
-    return referencedUris;
   }
 
   /**
-   * Return the unlinked bundle of [file] for the current file state.
+   * Send a notifications to the [status] stream that the driver is idle.
+   */
+  void _transitionToIdle() {
+    if (_currentStatus != AnalysisStatus.IDLE) {
+      _currentStatus = AnalysisStatus.IDLE;
+      _statusController.add(AnalysisStatus.IDLE);
+    }
+  }
+
+  /**
+   * Verify the API signature for the file with the given [path], and decide
+   * which linked libraries should be invalidated, and files reanalyzed.
    *
-   * That is, if there is an existing bundle for the current content hash
-   * of the [file] in the [_byteStore], then it is returned. Otherwise, the
-   * [file] content is read, the content hash is computed and the current file
-   * state is updated accordingly. That the content is parsed into the
-   * [CompilationUnit] and serialized into a new unlinked bundle. The bundle
-   * is then put into the [_byteStore] and returned.
+   * TODO(scheglov) I see that adding a local var changes (full) API signature.
    */
-  PackageBundle _getUnlinked(_File file) {
-    // Try to get bytes for file's unlinked bundle.
-    List<int> bytes;
-    {
-      String key = '${file.contentHash}.unlinked';
-      bytes = _byteStore.get(key);
-    }
-    // If no cached unlinked bundle, compute it.
-    if (bytes == null) {
-      _logger.runTimed('Create unlinked for $file', () {
-        // We read the content and recomputed the hash.
-        // So, we need to update the key.
-        String key = '${file.contentHash}.unlinked';
-        UnlinkedUnitBuilder unlinkedUnit = serializeAstUnlinked(file.unit);
-        PackageBundleAssembler assembler = new PackageBundleAssembler();
-        assembler.addUnlinkedUnitWithHash(
-            file.uri.toString(), unlinkedUnit, key);
-        bytes = assembler.assemble().toBuffer();
-        _byteStore.put(key, bytes);
-      });
-    }
-    return new PackageBundle.fromBuffer(bytes);
+  void _verifyApiSignatureOfChangedFile(String path) {
+    _logger.run('Verify API signature of $path', () {
+      String oldSignature = _fileApiSignatureMap[path];
+      // Compute the new API signature.
+      // _File.forResolution() also updates the content hash in the cache.
+      Source source = _sourceForPath(path);
+      _File newFile = new _File.forResolution(this, source);
+      String newSignature = newFile.unlinked.apiSignature;
+      // If the old API signature is not null, then the file was used to
+      // compute at least one dependency signature. If the new API signature
+      // is different, then potentially all dependency signatures and
+      // resolution results are invalid.
+      if (oldSignature != null && oldSignature != newSignature) {
+        _logger.writeln('API signatures mismatch found for $newFile');
+        _dependencySignatureMap.clear();
+        _filesToAnalyze.addAll(_explicitFiles);
+      }
+    });
+  }
+
+  /**
+   * Remove and return the first item in the given [set].
+   */
+  static Object/*=T*/ _removeFirst/*<T>*/(LinkedHashSet<Object/*=T*/ > set) {
+    Object/*=T*/ element = set.first;
+    set.remove(element);
+    return element;
   }
 }
 
@@ -658,19 +757,56 @@
       this.errors);
 }
 
-class LibraryContext {
-  final _File file;
-  final _LibraryNode node;
-  final SummaryDataStore store;
-  LibraryContext(this.file, this.node, this.store);
+/**
+ * The status of [AnalysisDriver]
+ */
+class AnalysisStatus {
+  static const IDLE = const AnalysisStatus._(false);
+  static const ANALYZING = const AnalysisStatus._(true);
+
+  final bool _analyzing;
+
+  const AnalysisStatus._(this._analyzing);
+
+  /**
+   * Return `true` is the driver is analyzing.
+   */
+  bool get isAnalyzing => _analyzing;
+
+  /**
+   * Return `true` is the driver is idle.
+   */
+  bool get isIdle => !_analyzing;
 }
 
+/**
+ * This class is used to gather and print performance information.
+ */
 class PerformanceLog {
   final StringSink sink;
   int _level = 0;
 
   PerformanceLog(this.sink);
 
+  /**
+   * Enter a new execution section, which starts at one point of code, runs
+   * some time, and then ends at the other point of code.
+   *
+   * The client must call [PerformanceLogSection.exit] for every [enter].
+   */
+  PerformanceLogSection enter(String msg) {
+    writeln('+++ $msg.');
+    _level++;
+    return new PerformanceLogSection(this, msg);
+  }
+
+  /**
+   * Return the result of the function [f] invocation and log the elapsed time.
+   *
+   * Each invocation of [run] creates a new enclosed section in the log,
+   * which begins with printing [msg], then any log output produced during
+   * [f] invocation, and ends with printing [msg] with the elapsed time.
+   */
   /*=T*/ run/*<T>*/(String msg, /*=T*/ f()) {
     Stopwatch timer = new Stopwatch()..start();
     try {
@@ -684,48 +820,57 @@
     }
   }
 
-  /*=T*/ runTimed/*<T>*/(String msg, /*=T*/ f()) {
-    _level++;
-    Stopwatch timer = new Stopwatch()..start();
-    try {
-      return f();
-    } finally {
-      _level--;
-      int ms = timer.elapsedMilliseconds;
-      writeln('$msg in $ms ms.');
-    }
-  }
-
-  runTimed2(f(), String getMsg()) {
-    _level++;
-    Stopwatch timer = new Stopwatch()..start();
-    try {
-      return f();
-    } finally {
-      _level--;
-      int ms = timer.elapsedMilliseconds;
-      String msg = getMsg();
-      writeln('$msg in $ms ms.');
-    }
-  }
-
+  /**
+   * Write a new line into the log
+   */
   void writeln(String msg) {
     String indent = '\t' * _level;
     sink.writeln('$indent$msg');
   }
 }
 
-class ReferencedUris {
-  bool isLibrary = true;
-  final List<String> imported = <String>[];
-  final List<String> exported = <String>[];
-  final List<String> parted = <String>[];
+/**
+ * The performance measurement section for operations that start and end
+ * at different place in code, so cannot be run using [PerformanceLog.run].
+ *
+ * The client must call [exit] for every [PerformanceLog.enter].
+ */
+class PerformanceLogSection {
+  final PerformanceLog _logger;
+  final String _msg;
+  final Stopwatch _timer = new Stopwatch()..start();
+
+  PerformanceLogSection(this._logger, this._msg);
+
+  /**
+   * Stop the timer, log the time.
+   */
+  void exit() {
+    _timer.stop();
+    _logger._level--;
+    int ms = _timer.elapsedMilliseconds;
+    _logger.writeln('--- $_msg in $ms ms.');
+  }
 }
 
 /**
  * Information about a file being analyzed, explicitly or implicitly.
  *
- * It keeps a consistent view on its [content], [contentHash] and [unit].
+ * It provides a stable, consistent view on its [content], [contentHash],
+ * [unlinked] and [unit].
+ *
+ * A new file can be created either for resolution or for linking.
+ *
+ * When file is created for linking, it assumes that the file has not been
+ * changed since the last time its content was read and hashed. So, this
+ * content hash is also used to look for an existing unlinked bundle in the
+ * [AnalysisDriver._byteStore]. If any of the caches is empty, the file is
+ * created without caching, as for resolution.
+ *
+ * When file is created for resolution, we always read the content, compute its
+ * hash and update [AnalysisDriver._fileContentHashMap], parse the content,
+ * compute the unlinked bundle and update [AnalysisDriver._fileApiSignatureMap].
+ * It is important to keep these two maps in sync.
  */
 class _File {
   /**
@@ -734,61 +879,139 @@
   final AnalysisDriver driver;
 
   /**
-   * The [Source] this [_File] instance represent.
+   * The [Source] this [_File] instance represents.
    */
   final Source source;
 
-  String _content;
-  String _contentHash;
-  CompilationUnit _unit;
-
-  _File(this.driver, this.source);
+  /**
+   * The [source] content, or `null` if this file is for linking.
+   */
+  final String content;
 
   /**
-   * Return the current content of the file.
-   *
-   * If the [_content] field if it is still `null`, get the content from the
-   * content cache or from the [source]. If the content cannot be accessed
-   * because of an exception, it considers to be an empty string.
-   *
-   * When a new content is read, the new [_contentHash] is computed and the
-   * current file state is updated.
+   * The [source] content hash, not `null` even if [content] is `null`.
    */
-  String get content {
-    if (_content == null) {
-      _readContentAndComputeHash();
-    }
-    return _content;
-  }
+  final String contentHash;
 
   /**
-   * Ensure that the [contentHash] is filled.
-   *
-   * If the hash is already in the current file state, return the current
-   * value. Otherwise, read the [content], compute the hash, put it into
-   * the current file state, and update the [contentHash] field.
-   *
-   * The client cannot remember values of this property, because its value
-   * might change when [content] is read and the hash is recomputed.
+   * The unlinked bundle, not `null`.
    */
-  String get contentHash {
-    _contentHash ??= driver._fileContentHashMap[path];
-    if (_contentHash == null) {
-      _readContentAndComputeHash();
+  final PackageBundle unlinked;
+
+  /**
+   * The unresolved unit, not `null` if this file is for resolution.
+   */
+  final CompilationUnit unit;
+
+  /**
+   * Return the file with consistent [content] and [contentHash].
+   */
+  factory _File.forContent(AnalysisDriver driver, Source source) {
+    String path = source.fullName;
+    // Read the content.
+    String content;
+    try {
+      content = driver._contentCache.getContents(source);
+      content ??= source.contents.data;
+    } catch (_) {
+      content = '';
+      // TODO(scheglov) We fail to report URI_DOES_NOT_EXIST.
+      // On one hand we need to provide an unlinked bundle to prevent
+      // analysis context from reading the file (we want it to work
+      // hermetically and handle one one file at a time). OTOH,
+      // ResynthesizerResultProvider happily reports that any source in the
+      // SummaryDataStore has MODIFICATION_TIME `0`. We need to return `-1`
+      // for missing files. Maybe add this feature to SummaryDataStore?
     }
-    return _contentHash;
+    // Compute the content hash.
+    List<int> textBytes = UTF8.encode(content);
+    List<int> hashBytes = md5.convert(textBytes).bytes;
+    String contentHash = hex.encode(hashBytes);
+    driver._fileContentHashMap[path] = contentHash;
+    // Return information about the file content.
+    return new _File._(driver, source, content, contentHash, null, null);
   }
 
+  factory _File.forLinking(AnalysisDriver driver, Source source) {
+    String path = source.fullName;
+    String contentHash = driver._fileContentHashMap[path];
+    // If we don't have the file content hash, compute it.
+    if (contentHash == null) {
+      _File file = new _File.forContent(driver, source);
+      contentHash = file.contentHash;
+    }
+    // If we have the cached unlinked bundle, use it.
+    {
+      String key = '$contentHash.unlinked';
+      List<int> bytes = driver._byteStore.get(key);
+      if (bytes != null) {
+        PackageBundle unlinked = new PackageBundle.fromBuffer(bytes);
+        _updateApiSignature(driver, path, unlinked.apiSignature);
+        return new _File._(driver, source, null, contentHash, unlinked, null);
+      }
+    }
+    // Otherwise, read the source, parse and build a new unlinked bundle.
+    return new _File.forResolution(driver, source);
+  }
+
+  factory _File.forResolution(AnalysisDriver driver, Source source) {
+    _File file = new _File.forContent(driver, source);
+    String path = file.path;
+    String content = file.content;
+    String contentHash = file.contentHash;
+    // Parse the unit.
+    CompilationUnit unit = _parse(driver, source, content);
+    // Prepare the unlinked bundle.
+    PackageBundle unlinked;
+    {
+      String key = '$contentHash.unlinked';
+      List<int> bytes = driver._byteStore.get(key);
+      if (bytes == null) {
+        driver._logger.run('Create unlinked for $path', () {
+          UnlinkedUnitBuilder unlinkedUnit = serializeAstUnlinked(unit);
+          PackageBundleAssembler assembler = new PackageBundleAssembler();
+          assembler.addUnlinkedUnitWithHash(
+              source.uri.toString(), unlinkedUnit, contentHash);
+          bytes = assembler.assemble().toBuffer();
+          driver._byteStore.put(key, bytes);
+        });
+      }
+      unlinked = new PackageBundle.fromBuffer(bytes);
+      _updateApiSignature(driver, path, unlinked.apiSignature);
+    }
+    // Return the full file.
+    return new _File._(driver, source, content, contentHash, unlinked, unit);
+  }
+
+  _File._(this.driver, this.source, this.content, this.contentHash,
+      this.unlinked, this.unit);
+
   String get path => source.fullName;
 
+  Uri get uri => source.uri;
+
   /**
-   * Return the [CompilationUnit] of the file.
+   * Return the [_File] for the [uri] referenced in this file.
    *
-   * Current this unit is resolved, it is used to compute unlinked summaries
-   * and and URIs. We use a separate analysis context to perform resolution
-   * and computing errors. But this might change in the future.
+   * This [_File] can be used only for linking.
    */
-  CompilationUnit get unit {
+  _File resolveUri(String uri) {
+    // TODO(scheglov) Consider removing this caching after implementing other
+    // optimizations, e.g. changeFile() optimization.
+    Source uriSource = driver._uriResolutionCache
+        .putIfAbsent(this.uri, () => <String, Source>{})
+        .putIfAbsent(uri, () => driver._sourceFactory.resolveUri(source, uri));
+    return new _File.forLinking(driver, uriSource);
+  }
+
+  @override
+  String toString() => path;
+
+  /**
+   * Return the parsed unresolved [CompilationUnit] for the given [content].
+   */
+  static CompilationUnit _parse(
+      AnalysisDriver driver, Source source, String content) {
     AnalysisErrorListener errorListener = AnalysisErrorListener.NULL_LISTENER;
 
     CharSequenceReader reader = new CharSequenceReader(content);
@@ -799,53 +1022,31 @@
 
     Parser parser = new Parser(source, errorListener);
     parser.parseGenericMethodComments = driver._analysisOptions.strongMode;
-    _unit = parser.parseCompilationUnit(token);
-    _unit.lineInfo = lineInfo;
-
-    return _unit;
+    CompilationUnit unit = parser.parseCompilationUnit(token);
+    unit.lineInfo = lineInfo;
+    return unit;
   }
 
-  Uri get uri => source.uri;
-
-  /**
-   * Return the [_File] for the [uri] referenced in this file.
-   */
-  _File resolveUri(String uri) {
-    Source uriSource = driver._uriResolutionCache
-        .putIfAbsent(this.uri, () => <String, Source>{})
-        .putIfAbsent(uri, () => driver._sourceFactory.resolveUri(source, uri));
-    return new _File(driver, uriSource);
-  }
-
-  @override
-  String toString() => uri.toString();
-
-  /**
-   * Fill the [_content] and [_contentHash] fields.
-   *
-   * If the [_content] field if it is still `null`, get the content from the
-   * content cache or from the [source]. If the content cannot be accessed
-   * because of an exception, it considers to be an empty string.
-   *
-   * When a new content is read, the new [_contentHash] should be computed and
-   * the current file state should be updated.
-   */
-  void _readContentAndComputeHash() {
-    try {
-      _content = driver._contentCache.getContents(source);
-      _content ??= source.contents.data;
-    } catch (_) {
-      _content = '';
+  static void _updateApiSignature(
+      AnalysisDriver driver, String path, String newSignature) {
+    String oldSignature = driver._fileApiSignatureMap[path];
+    if (oldSignature != null && oldSignature != newSignature) {
+      driver._dependencySignatureMap.clear();
     }
-    // Compute the content hash.
-    List<int> textBytes = UTF8.encode(_content);
-    List<int> hashBytes = md5.convert(textBytes).bytes;
-    _contentHash = hex.encode(hashBytes);
-    // Update the current file state.
-    driver._fileContentHashMap[path] = _contentHash;
+    driver._fileApiSignatureMap[path] = newSignature;
   }
 }
 
+/**
+ * TODO(scheglov) document
+ */
+class _LibraryContext {
+  final _File file;
+  final _LibraryNode node;
+  final SummaryDataStore store;
+  _LibraryContext(this.file, this.node, this.store);
+}
+
 class _LibraryNode {
   final AnalysisDriver driver;
   final Map<String, _LibraryNode> nodes;
@@ -854,7 +1055,7 @@
 
   Set<_LibraryNode> transitiveDependencies;
   List<_LibraryNode> _dependencies;
-  String _linkedHash;
+  String _dependencySignature;
 
   _LibraryNode(this.driver, this.nodes, this.uri);
 
@@ -901,11 +1102,9 @@
     return _dependencies;
   }
 
-  @override
-  int get hashCode => uri.hashCode;
-
-  String get linkedHash {
-    _linkedHash ??= driver._linkedHashMap.putIfAbsent(uri, () {
+  String get dependencySignature {
+    return _dependencySignature ??=
+        driver._dependencySignatureMap.putIfAbsent(uri, () {
       computeTransitiveDependencies();
 
       // Add all unlinked API signatures.
@@ -924,9 +1123,11 @@
       signatures.forEach(signature.addString);
       return signature.toHex();
     });
-    return _linkedHash;
   }
 
+  @override
+  int get hashCode => uri.hashCode;
+
   bool operator ==(other) {
     return other is _LibraryNode && other.uri == uri;
   }
@@ -948,3 +1149,58 @@
   @override
   String toString() => uri.toString();
 }
+
+/**
+ * [_Monitor] can be used to wait for a signal.
+ *
+ * Signals are not queued, the client will receive exactly one signal
+ * regardless of the number of [notify] invocations. The [signal] is reset
+ * after completion and will not complete until [notify] is called next time.
+ */
+class _Monitor {
+  Completer<Null> _completer = new Completer<Null>();
+
+  /**
+   * Return a [Future] that completes when [notify] is called at least once.
+   */
+  Future<Null> get signal async {
+    await _completer.future;
+    _completer = new Completer<Null>();
+  }
+
+  /**
+   * Complete the [signal] future if it is not completed yet. It is safe to
+   * call this method multiple times, but the [signal] will complete only once.
+   */
+  void notify() {
+    if (!_completer.isCompleted) {
+      _completer.complete(null);
+    }
+  }
+}
+
+/**
+ * TODO(scheglov) document
+ */
+class _ReferencedUris {
+  bool isLibrary = true;
+  final List<String> imported = <String>[];
+  final List<String> exported = <String>[];
+  final List<String> parted = <String>[];
+
+  factory _ReferencedUris(UnlinkedUnit unit) {
+    _ReferencedUris referenced = new _ReferencedUris._();
+    referenced.parted.addAll(unit.publicNamespace.parts);
+    for (UnlinkedImport import in unit.imports) {
+      if (!import.isImplicit) {
+        referenced.imported.add(import.uri);
+      }
+    }
+    for (UnlinkedExportPublic export in unit.publicNamespace.exports) {
+      referenced.exported.add(export.uri);
+    }
+    return referenced;
+  }
+
+  _ReferencedUris._();
+}
diff --git a/pkg/analyzer/lib/src/dart/element/element.dart b/pkg/analyzer/lib/src/dart/element/element.dart
index ddfc3b4..d7d39a8 100644
--- a/pkg/analyzer/lib/src/dart/element/element.dart
+++ b/pkg/analyzer/lib/src/dart/element/element.dart
@@ -33,6 +33,18 @@
 import 'package:analyzer/src/task/dart.dart';
 
 /**
+ * Assert that the given [object] is null, which in the places where this
+ * function is called means that the element is not resynthesized.
+ */
+void _assertNotResynthesized(Object object) {
+  // TODO(scheglov) I comment this check for now.
+  // When we make a decision about switch to the new analysis driver,
+  // we will need to rework the analysis code to don't call the setters
+  // or restore / inline it.
+//  assert(object == null);
+}
+
+/**
  * A concrete implementation of a [ClassElement].
  */
 abstract class AbstractClassElementImpl extends ElementImpl
@@ -505,7 +517,7 @@
    * Set whether this class is abstract.
    */
   void set abstract(bool isAbstract) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     setModifier(Modifier.ABSTRACT, isAbstract);
   }
 
@@ -519,7 +531,7 @@
 
   @override
   void set accessors(List<PropertyAccessorElement> accessors) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     super.accessors = accessors;
   }
 
@@ -574,7 +586,7 @@
    * Should only be used for class elements that are not mixin applications.
    */
   void set constructors(List<ConstructorElement> constructors) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     assert(!isMixinApplication);
     for (ConstructorElement constructor in constructors) {
       (constructor as ConstructorElementImpl).enclosingElement = this;
@@ -647,7 +659,7 @@
 
   @override
   void set fields(List<FieldElement> fields) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     super.fields = fields;
   }
 
@@ -659,7 +671,7 @@
   }
 
   void set hasBeenInferred(bool hasBeenInferred) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     _hasBeenInferred = hasBeenInferred;
   }
 
@@ -749,7 +761,7 @@
   }
 
   void set interfaces(List<InterfaceType> interfaces) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     _interfaces = interfaces;
   }
 
@@ -828,7 +840,7 @@
    * Set the methods contained in this class to the given [methods].
    */
   void set methods(List<MethodElement> methods) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     for (MethodElement method in methods) {
       (method as MethodElementImpl).enclosingElement = this;
     }
@@ -839,7 +851,7 @@
    * Set whether this class is a mixin application.
    */
   void set mixinApplication(bool isMixinApplication) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     setModifier(Modifier.MIXIN_APPLICATION, isMixinApplication);
   }
 
@@ -856,7 +868,7 @@
   }
 
   void set mixins(List<InterfaceType> mixins) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     _mixins = mixins;
   }
 
@@ -898,7 +910,7 @@
   }
 
   void set supertype(InterfaceType supertype) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     _supertype = supertype;
   }
 
@@ -928,7 +940,7 @@
    * [typeParameters].
    */
   void set typeParameters(List<TypeParameterElement> typeParameters) {
-    assert(_unlinkedClass == null);
+    _assertNotResynthesized(_unlinkedClass);
     for (TypeParameterElement typeParameter in typeParameters) {
       (typeParameter as TypeParameterElementImpl).enclosingElement = this;
     }
@@ -1478,7 +1490,7 @@
    * Set the enums contained in this compilation unit to the given [enums].
    */
   void set enums(List<ClassElement> enums) {
-    assert(_unlinkedUnit == null);
+    _assertNotResynthesized(_unlinkedUnit);
     for (ClassElement enumDeclaration in enums) {
       (enumDeclaration as EnumElementImpl).enclosingElement = this;
     }
@@ -1592,7 +1604,7 @@
    * given [typeAliases].
    */
   void set typeAliases(List<FunctionTypeAliasElement> typeAliases) {
-    assert(_unlinkedUnit == null);
+    _assertNotResynthesized(_unlinkedUnit);
     for (FunctionTypeAliasElement typeAlias in typeAliases) {
       (typeAlias as FunctionTypeAliasElementImpl).enclosingElement = this;
     }
@@ -1616,7 +1628,7 @@
    * Set the types contained in this compilation unit to the given [types].
    */
   void set types(List<ClassElement> types) {
-    assert(_unlinkedUnit == null);
+    _assertNotResynthesized(_unlinkedUnit);
     for (ClassElement type in types) {
       // Another implementation of ClassElement is _DeferredClassElement,
       // which is used to resynthesize classes lazily. We cannot cast it
@@ -2022,7 +2034,7 @@
    * Set whether this constructor represents a 'const' constructor.
    */
   void set const2(bool isConst) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.CONST, isConst);
   }
 
@@ -2037,7 +2049,7 @@
 
   void set constantInitializers(
       List<ConstructorInitializer> constantInitializers) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     _constantInitializers = constantInitializers;
   }
 
@@ -2053,7 +2065,7 @@
    * Set whether this constructor represents a factory method.
    */
   void set factory(bool isFactory) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.FACTORY, isFactory);
   }
 
@@ -2124,7 +2136,7 @@
   }
 
   void set nameEnd(int nameEnd) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     _nameEnd = nameEnd;
   }
 
@@ -2139,7 +2151,7 @@
   }
 
   void set periodOffset(int periodOffset) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     _periodOffset = periodOffset;
   }
 
@@ -2163,7 +2175,7 @@
   }
 
   void set redirectedConstructor(ConstructorElement redirectedConstructor) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     _redirectedConstructor = redirectedConstructor;
   }
 
@@ -2335,7 +2347,7 @@
   }
 
   void set constantInitializer(Expression constantInitializer) {
-    assert(_unlinkedConst == null);
+    _assertNotResynthesized(_unlinkedConst);
     _constantInitializer = constantInitializer;
   }
 
@@ -3358,7 +3370,7 @@
    * Set whether this class is abstract.
    */
   void set abstract(bool isAbstract) {
-    assert(_unlinkedEnum == null);
+    _assertNotResynthesized(_unlinkedEnum);
   }
 
   @override
@@ -3371,7 +3383,7 @@
 
   @override
   void set accessors(List<PropertyAccessorElement> accessors) {
-    assert(_unlinkedEnum == null);
+    _assertNotResynthesized(_unlinkedEnum);
     super.accessors = accessors;
   }
 
@@ -3421,7 +3433,7 @@
 
   @override
   void set fields(List<FieldElement> fields) {
-    assert(_unlinkedEnum == null);
+    _assertNotResynthesized(_unlinkedEnum);
     super.fields = fields;
   }
 
@@ -3629,7 +3641,7 @@
    * Set whether this executable element's body is asynchronous.
    */
   void set asynchronous(bool isAsynchronous) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.ASYNCHRONOUS, isAsynchronous);
   }
 
@@ -3669,7 +3681,7 @@
    * Set whether this executable element is external.
    */
   void set external(bool isExternal) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.EXTERNAL, isExternal);
   }
 
@@ -3687,7 +3699,7 @@
    * [functions].
    */
   void set functions(List<FunctionElement> functions) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     for (FunctionElement function in functions) {
       (function as FunctionElementImpl).enclosingElement = this;
     }
@@ -3698,7 +3710,7 @@
    * Set whether this method's body is a generator.
    */
   void set generator(bool isGenerator) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.GENERATOR, isGenerator);
   }
 
@@ -3715,7 +3727,7 @@
    * Set whether this executable element has an implicit return type.
    */
   void set hasImplicitReturnType(bool hasImplicitReturnType) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.IMPLICIT_TYPE, hasImplicitReturnType);
   }
 
@@ -3771,7 +3783,7 @@
    * [labels].
    */
   void set labels(List<LabelElement> labels) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     for (LabelElement label in labels) {
       (label as LabelElementImpl).enclosingElement = this;
     }
@@ -3804,7 +3816,7 @@
    * [variables].
    */
   void set localVariables(List<LocalVariableElement> variables) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     for (LocalVariableElement variable in variables) {
       (variable as LocalVariableElementImpl).enclosingElement = this;
     }
@@ -3851,7 +3863,7 @@
    * [parameters].
    */
   void set parameters(List<ParameterElement> parameters) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     for (ParameterElement parameter in parameters) {
       (parameter as ParameterElementImpl).enclosingElement = this;
     }
@@ -3874,7 +3886,7 @@
   }
 
   void set returnType(DartType returnType) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     _returnType = returnType;
   }
 
@@ -3888,7 +3900,7 @@
   }
 
   void set type(FunctionType type) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     _type = type;
   }
 
@@ -3908,7 +3920,7 @@
    * [typeParameters].
    */
   void set typeParameters(List<TypeParameterElement> typeParameters) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     for (TypeParameterElement parameter in typeParameters) {
       (parameter as TypeParameterElementImpl).enclosingElement = this;
     }
@@ -4067,7 +4079,7 @@
   }
 
   void set combinators(List<NamespaceCombinator> combinators) {
-    assert(_unlinkedExportPublic == null);
+    _assertNotResynthesized(_unlinkedExportPublic);
     _combinators = combinators;
   }
 
@@ -4081,7 +4093,7 @@
   }
 
   void set exportedLibrary(LibraryElement exportedLibrary) {
-    assert(_unlinkedExportNonPublic == null);
+    _assertNotResynthesized(_unlinkedExportNonPublic);
     _exportedLibrary = exportedLibrary;
   }
 
@@ -4102,7 +4114,7 @@
   }
 
   void set metadata(List<ElementAnnotation> metadata) {
-    assert(_unlinkedExportNonPublic == null);
+    _assertNotResynthesized(_unlinkedExportNonPublic);
     super.metadata = metadata;
   }
 
@@ -4126,7 +4138,7 @@
 
   @override
   void set uri(String uri) {
-    assert(_unlinkedExportPublic == null);
+    _assertNotResynthesized(_unlinkedExportPublic);
     super.uri = uri;
   }
 
@@ -4140,7 +4152,7 @@
 
   @override
   void set uriEnd(int uriEnd) {
-    assert(_unlinkedExportNonPublic == null);
+    _assertNotResynthesized(_unlinkedExportNonPublic);
     super.uriEnd = uriEnd;
   }
 
@@ -4154,7 +4166,7 @@
 
   @override
   void set uriOffset(int uriOffset) {
-    assert(_unlinkedExportNonPublic == null);
+    _assertNotResynthesized(_unlinkedExportNonPublic);
     super.uriOffset = uriOffset;
   }
 
@@ -4239,7 +4251,7 @@
    * Set whether this field is static.
    */
   void set static(bool isStatic) {
-    assert(_unlinkedVariable == null);
+    _assertNotResynthesized(_unlinkedVariable);
     setModifier(Modifier.STATIC, isStatic);
   }
 
@@ -4299,7 +4311,7 @@
   }
 
   void set field(FieldElement field) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     _field = field;
   }
 
@@ -4316,7 +4328,7 @@
 
   @override
   void set type(DartType type) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     _type = type;
   }
 
@@ -4443,7 +4455,7 @@
    * [offset] with the given [length].
    */
   void setVisibleRange(int offset, int length) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     _visibleRangeOffset = offset;
     _visibleRangeLength = length;
   }
@@ -4702,7 +4714,7 @@
    * Set the parameters defined by this type alias to the given [parameters].
    */
   void set parameters(List<ParameterElement> parameters) {
-    assert(_unlinkedTypedef == null);
+    _assertNotResynthesized(_unlinkedTypedef);
     if (parameters != null) {
       for (ParameterElement parameter in parameters) {
         (parameter as ParameterElementImpl).enclosingElement = this;
@@ -4721,7 +4733,7 @@
   }
 
   void set returnType(DartType returnType) {
-    assert(_unlinkedTypedef == null);
+    _assertNotResynthesized(_unlinkedTypedef);
     _returnType = returnType;
   }
 
@@ -4734,7 +4746,7 @@
   }
 
   void set type(FunctionType type) {
-    assert(_unlinkedTypedef == null);
+    _assertNotResynthesized(_unlinkedTypedef);
     _type = type;
   }
 
@@ -4754,7 +4766,7 @@
    * [typeParameters].
    */
   void set typeParameters(List<TypeParameterElement> typeParameters) {
-    assert(_unlinkedTypedef == null);
+    _assertNotResynthesized(_unlinkedTypedef);
     for (TypeParameterElement typeParameter in typeParameters) {
       (typeParameter as TypeParameterElementImpl).enclosingElement = this;
     }
@@ -4861,7 +4873,7 @@
   }
 
   void set hiddenNames(List<String> hiddenNames) {
-    assert(_unlinkedCombinator == null);
+    _assertNotResynthesized(_unlinkedCombinator);
     _hiddenNames = hiddenNames;
   }
 
@@ -4948,7 +4960,7 @@
   }
 
   void set combinators(List<NamespaceCombinator> combinators) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     _combinators = combinators;
   }
 
@@ -4956,7 +4968,7 @@
    * Set whether this import is for a deferred library.
    */
   void set deferred(bool isDeferred) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     setModifier(Modifier.DEFERRED, isDeferred);
   }
 
@@ -4980,7 +4992,7 @@
   }
 
   void set importedLibrary(LibraryElement importedLibrary) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     _importedLibrary = importedLibrary;
   }
 
@@ -5014,7 +5026,7 @@
   }
 
   void set metadata(List<ElementAnnotation> metadata) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     super.metadata = metadata;
   }
 
@@ -5041,7 +5053,7 @@
   }
 
   void set prefix(PrefixElement prefix) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     _prefix = prefix;
   }
 
@@ -5054,7 +5066,7 @@
   }
 
   void set prefixOffset(int prefixOffset) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     _prefixOffset = prefixOffset;
   }
 
@@ -5072,7 +5084,7 @@
 
   @override
   void set uri(String uri) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     super.uri = uri;
   }
 
@@ -5089,7 +5101,7 @@
 
   @override
   void set uriEnd(int uriEnd) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     super.uriEnd = uriEnd;
   }
 
@@ -5106,7 +5118,7 @@
 
   @override
   void set uriOffset(int uriOffset) {
-    assert(_unlinkedImport == null);
+    _assertNotResynthesized(_unlinkedImport);
     super.uriOffset = uriOffset;
   }
 
@@ -5485,7 +5497,7 @@
    * given list of [exports].
    */
   void set exports(List<ExportElement> exports) {
-    assert(_unlinkedDefiningUnit == null);
+    _assertNotResynthesized(_unlinkedDefiningUnit);
     for (ExportElement exportElement in exports) {
       (exportElement as ExportElementImpl).enclosingElement = this;
     }
@@ -5555,7 +5567,7 @@
    * given list of [imports].
    */
   void set imports(List<ImportElement> imports) {
-    assert(_unlinkedDefiningUnit == null);
+    _assertNotResynthesized(_unlinkedDefiningUnit);
     for (ImportElement importElement in imports) {
       (importElement as ImportElementImpl).enclosingElement = this;
       PrefixElementImpl prefix = importElement.prefix as PrefixElementImpl;
@@ -6085,7 +6097,7 @@
    * [offset] with the given [length].
    */
   void setVisibleRange(int offset, int length) {
-    assert(_unlinkedVariable == null);
+    _assertNotResynthesized(_unlinkedVariable);
     _visibleRangeOffset = offset;
     _visibleRangeLength = length;
   }
@@ -6117,7 +6129,7 @@
    * Set whether this method is abstract.
    */
   void set abstract(bool isAbstract) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.ABSTRACT, isAbstract);
   }
 
@@ -6182,7 +6194,7 @@
    * Set whether this method is static.
    */
   void set static(bool isStatic) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.STATIC, isStatic);
   }
 
@@ -6684,7 +6696,7 @@
 
   @override
   void set const3(bool isConst) {
-    assert(_unlinkedVariable == null);
+    _assertNotResynthesized(_unlinkedVariable);
     super.const3 = isConst;
   }
 
@@ -6698,7 +6710,7 @@
 
   @override
   void set final2(bool isFinal) {
-    assert(_unlinkedVariable == null);
+    _assertNotResynthesized(_unlinkedVariable);
     super.final2 = isFinal;
   }
 
@@ -6712,7 +6724,7 @@
 
   @override
   void set hasImplicitType(bool hasImplicitType) {
-    assert(_unlinkedVariable == null);
+    _assertNotResynthesized(_unlinkedVariable);
     super.hasImplicitType = hasImplicitType;
   }
 
@@ -6735,7 +6747,7 @@
    * [function].
    */
   void set initializer(FunctionElement function) {
-    assert(_unlinkedVariable == null);
+    _assertNotResynthesized(_unlinkedVariable);
     super.initializer = function;
   }
 
@@ -6793,7 +6805,7 @@
   }
 
   void set type(DartType type) {
-    assert(_unlinkedVariable == null);
+    _assertNotResynthesized(_unlinkedVariable);
     _type = type;
   }
 
@@ -6931,7 +6943,7 @@
 
   @override
   void set const3(bool isConst) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     super.const3 = isConst;
   }
 
@@ -6950,13 +6962,13 @@
    * Set Dart code of the default value.
    */
   void set defaultValueCode(String defaultValueCode) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     this._defaultValueCode = StringUtilities.intern(defaultValueCode);
   }
 
   @override
   void set final2(bool isFinal) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     super.final2 = isFinal;
   }
 
@@ -6970,7 +6982,7 @@
 
   @override
   void set hasImplicitType(bool hasImplicitType) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     super.hasImplicitType = hasImplicitType;
   }
 
@@ -6992,7 +7004,7 @@
    * Record whether or not this parameter inherits from a covariant parameter.
    */
   void set inheritsCovariant(bool value) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     _inheritsCovariant = value;
   }
 
@@ -7015,7 +7027,7 @@
    * [function].
    */
   void set initializer(FunctionElement function) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     super.initializer = function;
   }
 
@@ -7108,7 +7120,7 @@
   }
 
   void set parameterKind(ParameterKind parameterKind) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     _parameterKind = parameterKind;
   }
 
@@ -7211,7 +7223,7 @@
    * [offset] with the given [length].
    */
   void setVisibleRange(int offset, int length) {
-    assert(_unlinkedParam == null);
+    _assertNotResynthesized(_unlinkedParam);
     _visibleRangeOffset = offset;
     _visibleRangeLength = length;
   }
@@ -7463,7 +7475,7 @@
    * Set whether this accessor is abstract.
    */
   void set abstract(bool isAbstract) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.ABSTRACT, isAbstract);
   }
 
@@ -7510,7 +7522,7 @@
    * Set whether this accessor is a getter.
    */
   void set getter(bool isGetter) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.GETTER, isGetter);
   }
 
@@ -7569,7 +7581,7 @@
    * Set whether this accessor is a setter.
    */
   void set setter(bool isSetter) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.SETTER, isSetter);
   }
 
@@ -7577,7 +7589,7 @@
    * Set whether this accessor is static.
    */
   void set static(bool isStatic) {
-    assert(serializedExecutable == null);
+    _assertNotResynthesized(serializedExecutable);
     setModifier(Modifier.STATIC, isStatic);
   }
 
@@ -7739,7 +7751,7 @@
   }
 
   void set propagatedType(DartType propagatedType) {
-    assert(_unlinkedVariable == null);
+    _assertNotResynthesized(_unlinkedVariable);
     _propagatedType = propagatedType;
   }
 }
@@ -7846,7 +7858,7 @@
   }
 
   void set end(int end) {
-    assert(_unlinkedCombinator == null);
+    _assertNotResynthesized(_unlinkedCombinator);
     _end = end;
   }
 
@@ -7859,7 +7871,7 @@
   }
 
   void set offset(int offset) {
-    assert(_unlinkedCombinator == null);
+    _assertNotResynthesized(_unlinkedCombinator);
     _offset = offset;
   }
 
@@ -7872,7 +7884,7 @@
   }
 
   void set shownNames(List<String> shownNames) {
-    assert(_unlinkedCombinator == null);
+    _assertNotResynthesized(_unlinkedCombinator);
     _shownNames = shownNames;
   }
 
@@ -8006,7 +8018,7 @@
   }
 
   void set bound(DartType bound) {
-    assert(_unlinkedTypeParam == null);
+    _assertNotResynthesized(_unlinkedTypeParam);
     _bound = bound;
   }
 
diff --git a/pkg/analyzer/lib/src/error/codes.dart b/pkg/analyzer/lib/src/error/codes.dart
index e04d6f3..feea8ee 100644
--- a/pkg/analyzer/lib/src/error/codes.dart
+++ b/pkg/analyzer/lib/src/error/codes.dart
@@ -3279,14 +3279,14 @@
 
   /**
    * 13.9 Switch: It is a static warning if the last statement of the statement
-   * sequence <i>s<sub>k</sub></i> is not a break, continue, return or throw
-   * statement.
+   * sequence <i>s<sub>k</sub></i> is not a break, continue, rethrow, return
+   * or throw statement.
    */
   static const StaticWarningCode CASE_BLOCK_NOT_TERMINATED =
       const StaticWarningCode(
           'CASE_BLOCK_NOT_TERMINATED',
           "The last statement of the 'case' should be 'break', 'continue', "
-          "'return' or 'throw'.",
+          "'rethrow', 'return' or 'throw'.",
           "Try adding one of the required statements.");
 
   /**
diff --git a/pkg/analyzer/lib/src/generated/declaration_resolver.dart b/pkg/analyzer/lib/src/generated/declaration_resolver.dart
index 4d24b8b..e1b68a8 100644
--- a/pkg/analyzer/lib/src/generated/declaration_resolver.dart
+++ b/pkg/analyzer/lib/src/generated/declaration_resolver.dart
@@ -255,8 +255,12 @@
   @override
   Object visitLibraryDirective(LibraryDirective node) {
     super.visitLibraryDirective(node);
-    _resolveAnnotations(
-        node, node.metadata, _enclosingUnit.getAnnotations(node.offset));
+    List<ElementAnnotation> annotations =
+        _enclosingUnit.getAnnotations(node.offset);
+    if (annotations.isEmpty && node.metadata.isNotEmpty) {
+      annotations = _walker.element.library.metadata;
+    }
+    _resolveAnnotations(node, node.metadata, annotations);
     return null;
   }
 
diff --git a/pkg/analyzer/lib/src/generated/error_verifier.dart b/pkg/analyzer/lib/src/generated/error_verifier.dart
index 31131b7..a74fd36 100644
--- a/pkg/analyzer/lib/src/generated/error_verifier.dart
+++ b/pkg/analyzer/lib/src/generated/error_verifier.dart
@@ -2596,7 +2596,11 @@
       }
       // no other switch member after this one
     } else {
-      Statement statement = statements[statements.length - 1];
+      Statement statement = statements.last;
+      if (statement is Block && statement.statements.isNotEmpty) {
+        Block block = statement;
+        statement = block.statements.last;
+      }
       // terminated with statement
       if (statement is BreakStatement ||
           statement is ContinueStatement ||
@@ -2606,7 +2610,8 @@
       // terminated with 'throw' expression
       if (statement is ExpressionStatement) {
         Expression expression = statement.expression;
-        if (expression is ThrowExpression) {
+        if (expression is ThrowExpression ||
+            expression is RethrowExpression) {
           return;
         }
       }
@@ -2618,7 +2623,7 @@
 
   /**
    * Verify that the switch cases in the given switch [statement] are terminated
-   * with 'break', 'continue', 'return' or 'throw'.
+   * with 'break', 'continue', 'rethrow', 'return' or 'throw'.
    *
    * See [StaticWarningCode.CASE_BLOCK_NOT_TERMINATED].
    */
diff --git a/pkg/analyzer/lib/src/summary/format.dart b/pkg/analyzer/lib/src/summary/format.dart
index d24aa70..85ac30a 100644
--- a/pkg/analyzer/lib/src/summary/format.dart
+++ b/pkg/analyzer/lib/src/summary/format.dart
@@ -129,6 +129,296 @@
   }
 }
 
+class AnalysisDriverResolvedUnitBuilder extends Object with _AnalysisDriverResolvedUnitMixin implements idl.AnalysisDriverResolvedUnit {
+  List<AnalysisDriverUnitErrorBuilder> _errors;
+
+  @override
+  List<AnalysisDriverUnitErrorBuilder> get errors => _errors ??= <AnalysisDriverUnitErrorBuilder>[];
+
+  /**
+   * The full list of analysis errors, both syntactic and semantic.
+   */
+  void set errors(List<AnalysisDriverUnitErrorBuilder> value) {
+    this._errors = value;
+  }
+
+  AnalysisDriverResolvedUnitBuilder({List<AnalysisDriverUnitErrorBuilder> errors})
+    : _errors = errors;
+
+  /**
+   * Flush [informative] data recursively.
+   */
+  void flushInformative() {
+    _errors?.forEach((b) => b.flushInformative());
+  }
+
+  /**
+   * Accumulate non-[informative] data into [signature].
+   */
+  void collectApiSignature(api_sig.ApiSignature signature) {
+    if (this._errors == null) {
+      signature.addInt(0);
+    } else {
+      signature.addInt(this._errors.length);
+      for (var x in this._errors) {
+        x?.collectApiSignature(signature);
+      }
+    }
+  }
+
+  List<int> toBuffer() {
+    fb.Builder fbBuilder = new fb.Builder();
+    return fbBuilder.finish(finish(fbBuilder), "ADRU");
+  }
+
+  fb.Offset finish(fb.Builder fbBuilder) {
+    fb.Offset offset_errors;
+    if (!(_errors == null || _errors.isEmpty)) {
+      offset_errors = fbBuilder.writeList(_errors.map((b) => b.finish(fbBuilder)).toList());
+    }
+    fbBuilder.startTable();
+    if (offset_errors != null) {
+      fbBuilder.addOffset(0, offset_errors);
+    }
+    return fbBuilder.endTable();
+  }
+}
+
+idl.AnalysisDriverResolvedUnit readAnalysisDriverResolvedUnit(List<int> buffer) {
+  fb.BufferContext rootRef = new fb.BufferContext.fromBytes(buffer);
+  return const _AnalysisDriverResolvedUnitReader().read(rootRef, 0);
+}
+
+class _AnalysisDriverResolvedUnitReader extends fb.TableReader<_AnalysisDriverResolvedUnitImpl> {
+  const _AnalysisDriverResolvedUnitReader();
+
+  @override
+  _AnalysisDriverResolvedUnitImpl createObject(fb.BufferContext bc, int offset) => new _AnalysisDriverResolvedUnitImpl(bc, offset);
+}
+
+class _AnalysisDriverResolvedUnitImpl extends Object with _AnalysisDriverResolvedUnitMixin implements idl.AnalysisDriverResolvedUnit {
+  final fb.BufferContext _bc;
+  final int _bcOffset;
+
+  _AnalysisDriverResolvedUnitImpl(this._bc, this._bcOffset);
+
+  List<idl.AnalysisDriverUnitError> _errors;
+
+  @override
+  List<idl.AnalysisDriverUnitError> get errors {
+    _errors ??= const fb.ListReader<idl.AnalysisDriverUnitError>(const _AnalysisDriverUnitErrorReader()).vTableGet(_bc, _bcOffset, 0, const <idl.AnalysisDriverUnitError>[]);
+    return _errors;
+  }
+}
+
+abstract class _AnalysisDriverResolvedUnitMixin implements idl.AnalysisDriverResolvedUnit {
+  @override
+  Map<String, Object> toJson() {
+    Map<String, Object> _result = <String, Object>{};
+    if (errors.isNotEmpty) _result["errors"] = errors.map((_value) => _value.toJson()).toList();
+    return _result;
+  }
+
+  @override
+  Map<String, Object> toMap() => {
+    "errors": errors,
+  };
+
+  @override
+  String toString() => convert.JSON.encode(toJson());
+}
+
+class AnalysisDriverUnitErrorBuilder extends Object with _AnalysisDriverUnitErrorMixin implements idl.AnalysisDriverUnitError {
+  String _correction;
+  int _length;
+  String _message;
+  int _offset;
+  String _uniqueName;
+
+  @override
+  String get correction => _correction ??= '';
+
+  /**
+   * The optional correction hint for the error.
+   */
+  void set correction(String value) {
+    this._correction = value;
+  }
+
+  @override
+  int get length => _length ??= 0;
+
+  /**
+   * The length of the error in the file.
+   */
+  void set length(int value) {
+    assert(value == null || value >= 0);
+    this._length = value;
+  }
+
+  @override
+  String get message => _message ??= '';
+
+  /**
+   * The message of the error.
+   */
+  void set message(String value) {
+    this._message = value;
+  }
+
+  @override
+  int get offset => _offset ??= 0;
+
+  /**
+   * The offset from the beginning of the file.
+   */
+  void set offset(int value) {
+    assert(value == null || value >= 0);
+    this._offset = value;
+  }
+
+  @override
+  String get uniqueName => _uniqueName ??= '';
+
+  /**
+   * The unique name of the error code.
+   */
+  void set uniqueName(String value) {
+    this._uniqueName = value;
+  }
+
+  AnalysisDriverUnitErrorBuilder({String correction, int length, String message, int offset, String uniqueName})
+    : _correction = correction,
+      _length = length,
+      _message = message,
+      _offset = offset,
+      _uniqueName = uniqueName;
+
+  /**
+   * Flush [informative] data recursively.
+   */
+  void flushInformative() {
+  }
+
+  /**
+   * Accumulate non-[informative] data into [signature].
+   */
+  void collectApiSignature(api_sig.ApiSignature signature) {
+    signature.addInt(this._offset ?? 0);
+    signature.addInt(this._length ?? 0);
+    signature.addString(this._uniqueName ?? '');
+    signature.addString(this._message ?? '');
+    signature.addString(this._correction ?? '');
+  }
+
+  fb.Offset finish(fb.Builder fbBuilder) {
+    fb.Offset offset_correction;
+    fb.Offset offset_message;
+    fb.Offset offset_uniqueName;
+    if (_correction != null) {
+      offset_correction = fbBuilder.writeString(_correction);
+    }
+    if (_message != null) {
+      offset_message = fbBuilder.writeString(_message);
+    }
+    if (_uniqueName != null) {
+      offset_uniqueName = fbBuilder.writeString(_uniqueName);
+    }
+    fbBuilder.startTable();
+    if (offset_correction != null) {
+      fbBuilder.addOffset(4, offset_correction);
+    }
+    if (_length != null && _length != 0) {
+      fbBuilder.addUint32(1, _length);
+    }
+    if (offset_message != null) {
+      fbBuilder.addOffset(3, offset_message);
+    }
+    if (_offset != null && _offset != 0) {
+      fbBuilder.addUint32(0, _offset);
+    }
+    if (offset_uniqueName != null) {
+      fbBuilder.addOffset(2, offset_uniqueName);
+    }
+    return fbBuilder.endTable();
+  }
+}
+
+class _AnalysisDriverUnitErrorReader extends fb.TableReader<_AnalysisDriverUnitErrorImpl> {
+  const _AnalysisDriverUnitErrorReader();
+
+  @override
+  _AnalysisDriverUnitErrorImpl createObject(fb.BufferContext bc, int offset) => new _AnalysisDriverUnitErrorImpl(bc, offset);
+}
+
+class _AnalysisDriverUnitErrorImpl extends Object with _AnalysisDriverUnitErrorMixin implements idl.AnalysisDriverUnitError {
+  final fb.BufferContext _bc;
+  final int _bcOffset;
+
+  _AnalysisDriverUnitErrorImpl(this._bc, this._bcOffset);
+
+  String _correction;
+  int _length;
+  String _message;
+  int _offset;
+  String _uniqueName;
+
+  @override
+  String get correction {
+    _correction ??= const fb.StringReader().vTableGet(_bc, _bcOffset, 4, '');
+    return _correction;
+  }
+
+  @override
+  int get length {
+    _length ??= const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 1, 0);
+    return _length;
+  }
+
+  @override
+  String get message {
+    _message ??= const fb.StringReader().vTableGet(_bc, _bcOffset, 3, '');
+    return _message;
+  }
+
+  @override
+  int get offset {
+    _offset ??= const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 0, 0);
+    return _offset;
+  }
+
+  @override
+  String get uniqueName {
+    _uniqueName ??= const fb.StringReader().vTableGet(_bc, _bcOffset, 2, '');
+    return _uniqueName;
+  }
+}
+
+abstract class _AnalysisDriverUnitErrorMixin implements idl.AnalysisDriverUnitError {
+  @override
+  Map<String, Object> toJson() {
+    Map<String, Object> _result = <String, Object>{};
+    if (correction != '') _result["correction"] = correction;
+    if (length != 0) _result["length"] = length;
+    if (message != '') _result["message"] = message;
+    if (offset != 0) _result["offset"] = offset;
+    if (uniqueName != '') _result["uniqueName"] = uniqueName;
+    return _result;
+  }
+
+  @override
+  Map<String, Object> toMap() => {
+    "correction": correction,
+    "length": length,
+    "message": message,
+    "offset": offset,
+    "uniqueName": uniqueName,
+  };
+
+  @override
+  String toString() => convert.JSON.encode(toJson());
+}
+
 class CodeRangeBuilder extends Object with _CodeRangeMixin implements idl.CodeRange {
   int _length;
   int _offset;
diff --git a/pkg/analyzer/lib/src/summary/format.fbs b/pkg/analyzer/lib/src/summary/format.fbs
index 3da4512..c3eb5e2 100644
--- a/pkg/analyzer/lib/src/summary/format.fbs
+++ b/pkg/analyzer/lib/src/summary/format.fbs
@@ -782,6 +782,46 @@
 }
 
 /**
+ * Information about a resolved unit.
+ */
+table AnalysisDriverResolvedUnit {
+  /**
+   * The full list of analysis errors, both syntactic and semantic.
+   */
+  errors:[AnalysisDriverUnitError] (id: 0);
+}
+
+/**
+ * Information about an error in a resolved unit.
+ */
+table AnalysisDriverUnitError {
+  /**
+   * The optional correction hint for the error.
+   */
+  correction:string (id: 4);
+
+  /**
+   * The length of the error in the file.
+   */
+  length:uint (id: 1);
+
+  /**
+   * The message of the error.
+   */
+  message:string (id: 3);
+
+  /**
+   * The offset from the beginning of the file.
+   */
+  offset:uint (id: 0);
+
+  /**
+   * The unique name of the error code.
+   */
+  uniqueName:string (id: 2);
+}
+
+/**
  * Information about an element code range.
  */
 table CodeRange {
diff --git a/pkg/analyzer/lib/src/summary/idl.dart b/pkg/analyzer/lib/src/summary/idl.dart
index 61f62a8..c67dee6 100644
--- a/pkg/analyzer/lib/src/summary/idl.dart
+++ b/pkg/analyzer/lib/src/summary/idl.dart
@@ -58,6 +58,56 @@
 const informative = null;
 
 /**
+ * Information about a resolved unit.
+ */
+@TopLevel('ADRU')
+abstract class AnalysisDriverResolvedUnit extends base.SummaryClass {
+  factory AnalysisDriverResolvedUnit.fromBuffer(List<int> buffer) =>
+      generated.readAnalysisDriverResolvedUnit(buffer);
+
+  /**
+   * The full list of analysis errors, both syntactic and semantic.
+   */
+  @Id(0)
+  List<AnalysisDriverUnitError> get errors;
+}
+
+/**
+ * Information about an error in a resolved unit.
+ */
+abstract class AnalysisDriverUnitError extends base.SummaryClass {
+  /**
+   * The optional correction hint for the error.
+   */
+  @Id(4)
+  String get correction;
+
+  /**
+   * The length of the error in the file.
+   */
+  @Id(1)
+  int get length;
+
+  /**
+   * The message of the error.
+   */
+  @Id(3)
+  String get message;
+
+  /**
+   * The offset from the beginning of the file.
+   */
+  @Id(0)
+  int get offset;
+
+  /**
+   * The unique name of the error code.
+   */
+  @Id(2)
+  String get uniqueName;
+}
+
+/**
  * Information about an element code range.
  */
 abstract class CodeRange extends base.SummaryClass {
diff --git a/pkg/analyzer/test/generated/declaration_resolver_test.dart b/pkg/analyzer/test/generated/declaration_resolver_test.dart
index 74232ac..32927b0 100644
--- a/pkg/analyzer/test/generated/declaration_resolver_test.dart
+++ b/pkg/analyzer/test/generated/declaration_resolver_test.dart
@@ -8,6 +8,7 @@
 import 'package:analyzer/dart/element/element.dart';
 import 'package:analyzer/src/dart/ast/ast.dart';
 import 'package:analyzer/src/dart/ast/utilities.dart';
+import 'package:analyzer/src/dart/element/element.dart';
 import 'package:analyzer/src/generated/declaration_resolver.dart';
 import 'package:analyzer/src/generated/engine.dart';
 import 'package:analyzer/src/generated/source.dart';
@@ -167,6 +168,20 @@
     checkMetadata('L');
   }
 
+  void test_metadata_libraryDirective_resynthesized() {
+    CompilationUnit unit = resolveSource('@a library L; const a = null;');
+    expect(unit.directives.single.metadata.single.name.name, 'a');
+    var unitElement = unit.element as CompilationUnitElementImpl;
+    // Damage the unit element - as if "setAnnotations" were not called.
+    // The LibraryElement still has the metadata, we should use it.
+    unitElement.setAnnotations(unit.directives.single.offset, []);
+    expect(unitElement.library.metadata, hasLength(1));
+    // DeclarationResolver on the clone should succeed.
+    CompilationUnit clonedUnit = AstCloner.clone(unit);
+    new DeclarationResolver().resolve(clonedUnit, unit.element);
+    expect(clonedUnit.directives.single.metadata.single.name.name, 'a');
+  }
+
   void test_metadata_localFunctionDeclaration() {
     setupCode('f() { @a g() {} }');
     // Note: metadata on local function declarations is ignored by the
diff --git a/pkg/analyzer/test/src/dart/analysis/driver_test.dart b/pkg/analyzer/test/src/dart/analysis/driver_test.dart
new file mode 100644
index 0000000..34e20ef
--- /dev/null
+++ b/pkg/analyzer/test/src/dart/analysis/driver_test.dart
@@ -0,0 +1,550 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+library analyzer.test.driver;
+
+import 'dart:async';
+import 'dart:convert';
+
+import 'package:analyzer/dart/ast/ast.dart';
+import 'package:analyzer/error/error.dart';
+import 'package:analyzer/file_system/file_system.dart';
+import 'package:analyzer/file_system/memory_file_system.dart';
+import 'package:analyzer/source/package_map_resolver.dart';
+import 'package:analyzer/src/dart/analysis/byte_store.dart';
+import 'package:analyzer/src/dart/analysis/driver.dart';
+import 'package:analyzer/src/error/codes.dart';
+import 'package:analyzer/src/generated/engine.dart' show AnalysisOptionsImpl;
+import 'package:analyzer/src/generated/source.dart';
+import 'package:convert/convert.dart';
+import 'package:crypto/crypto.dart';
+import 'package:test/test.dart';
+import 'package:test_reflective_loader/test_reflective_loader.dart';
+
+import '../../context/mock_sdk.dart';
+
+main() {
+  defineReflectiveSuite(() {
+    defineReflectiveTests(DriverTest);
+  });
+}
+
+/**
+ * Returns a [Future] that completes after pumping the event queue [times]
+ * times. By default, this should pump the event queue enough times to allow
+ * any code to run, as long as it's not waiting on some external event.
+ */
+Future pumpEventQueue([int times = 5000]) {
+  if (times == 0) return new Future.value();
+  // We use a delayed future to allow microtask events to finish. The
+  // Future.value or Future() constructors use scheduleMicrotask themselves and
+  // would therefore not wait for microtask callbacks that are scheduled after
+  // invoking this method.
+  return new Future.delayed(Duration.ZERO, () => pumpEventQueue(times - 1));
+}
+
+@reflectiveTest
+class DriverTest {
+  static final MockSdk sdk = new MockSdk();
+
+  final MemoryResourceProvider provider = new MemoryResourceProvider();
+  final ByteStore byteStore = new _TestByteStore();
+  final ContentCache contentCache = new ContentCache();
+  final StringBuffer logBuffer = new StringBuffer();
+
+  AnalysisDriver driver;
+  final _Monitor idleStatusMonitor = new _Monitor();
+  final List<AnalysisStatus> allStatuses = <AnalysisStatus>[];
+  final List<AnalysisResult> allResults = <AnalysisResult>[];
+
+  String testProject;
+  String testFile;
+
+  void setUp() {
+    new MockSdk();
+    testProject = _p('/test/lib');
+    testFile = _p('/test/lib/test.dart');
+    driver = new AnalysisDriver(
+        new PerformanceLog(logBuffer),
+        provider,
+        byteStore,
+        contentCache,
+        new SourceFactory([
+          new DartUriResolver(sdk),
+          new PackageMapUriResolver(provider, <String, List<Folder>>{
+            'test': [provider.getFolder(testProject)]
+          })
+        ], null, provider),
+        new AnalysisOptionsImpl()..strongMode = true);
+    driver.status.lastWhere((status) {
+      allStatuses.add(status);
+      if (status.isIdle) {
+        idleStatusMonitor.notify();
+      }
+    });
+    driver.results.listen(allResults.add);
+  }
+
+  test_addFile_thenRemove() async {
+    var a = _p('/test/lib/a.dart');
+    var b = _p('/test/lib/b.dart');
+    provider.newFile(a, 'class A {}');
+    provider.newFile(b, 'class B {}');
+    driver.addFile(a);
+    driver.addFile(b);
+
+    // Now remove 'a'.
+    driver.removeFile(a);
+
+    await _waitForIdle();
+
+    // Only 'b' has been analyzed, because 'a' was removed before we started.
+    expect(allResults, hasLength(1));
+    expect(allResults[0].path, b);
+  }
+
+  test_changeFile_implicitlyAnalyzed() async {
+    var a = _p('/test/lib/a.dart');
+    var b = _p('/test/lib/b.dart');
+    provider.newFile(
+        a,
+        r'''
+import 'b.dart';
+var A = B;
+''');
+    provider.newFile(b, 'var B = 1;');
+
+    driver.priorityFiles = [a];
+    driver.addFile(a);
+
+    // We have a result only for "a".
+    await _waitForIdle();
+    expect(allResults, hasLength(1));
+    {
+      AnalysisResult ar = allResults.firstWhere((r) => r.path == a);
+      expect(_getTopLevelVarType(ar.unit, 'A'), 'int');
+    }
+    allResults.clear();
+
+    // Change "b" and notify.
+    provider.updateFile(b, 'var B = 1.2;');
+    driver.changeFile(b);
+
+    // While "b" is not analyzed explicitly, it is analyzed implicitly.
+    // The change causes "a" to be reanalyzed.
+    await _waitForIdle();
+    expect(allResults, hasLength(1));
+    {
+      AnalysisResult ar = allResults.firstWhere((r) => r.path == a);
+      expect(_getTopLevelVarType(ar.unit, 'A'), 'double');
+    }
+  }
+
+  test_changeFile_selfConsistent() async {
+    var a = _p('/test/lib/a.dart');
+    var b = _p('/test/lib/b.dart');
+    provider.newFile(
+        a,
+        r'''
+import 'b.dart';
+var A1 = 1;
+var A2 = B1;
+''');
+    provider.newFile(
+        b,
+        r'''
+import 'a.dart';
+var B1 = A1;
+''');
+
+    driver.priorityFiles = [a, b];
+    driver.addFile(a);
+    driver.addFile(b);
+    await _waitForIdle();
+
+    // We have results for both "a" and "b".
+    expect(allResults, hasLength(2));
+    {
+      AnalysisResult ar = allResults.firstWhere((r) => r.path == a);
+      expect(_getTopLevelVarType(ar.unit, 'A1'), 'int');
+      expect(_getTopLevelVarType(ar.unit, 'A2'), 'int');
+    }
+    {
+      AnalysisResult br = allResults.firstWhere((r) => r.path == b);
+      expect(_getTopLevelVarType(br.unit, 'B1'), 'int');
+    }
+
+    // Clear the results and update "a".
+    allResults.clear();
+    provider.updateFile(
+        a,
+        r'''
+import 'b.dart';
+var A1 = 1.2;
+var A2 = B1;
+''');
+    driver.changeFile(a);
+
+    // We again get results for both "a" and "b".
+    // The results are consistent.
+    await _waitForIdle();
+    expect(allResults, hasLength(2));
+    {
+      AnalysisResult ar = allResults.firstWhere((r) => r.path == a);
+      expect(_getTopLevelVarType(ar.unit, 'A1'), 'double');
+      expect(_getTopLevelVarType(ar.unit, 'A2'), 'double');
+    }
+    {
+      AnalysisResult br = allResults.firstWhere((r) => r.path == b);
+      expect(_getTopLevelVarType(br.unit, 'B1'), 'double');
+    }
+  }
+
+  test_changeFile_single() async {
+    _addTestFile('var V = 1;', priority: true);
+
+    // Initial analysis.
+    {
+      await _waitForIdle();
+      expect(allResults, hasLength(1));
+      AnalysisResult result = allResults[0];
+      expect(result.path, testFile);
+      expect(_getTopLevelVarType(result.unit, 'V'), 'int');
+    }
+
+    // Update the file, but don't notify the driver.
+    allResults.clear();
+    provider.updateFile(testFile, 'var V = 1.2');
+
+    // No new results.
+    await pumpEventQueue();
+    expect(allResults, isEmpty);
+
+    // Notify the driver about the change.
+    driver.changeFile(testFile);
+
+    // We get a new result.
+    {
+      await _waitForIdle();
+      expect(allResults, hasLength(1));
+      AnalysisResult result = allResults[0];
+      expect(result.path, testFile);
+      expect(_getTopLevelVarType(result.unit, 'V'), 'double');
+    }
+  }
+
+  test_getResult() async {
+    String content = 'int f() => 42;';
+    _addTestFile(content, priority: true);
+
+    AnalysisResult result = await driver.getResult(testFile);
+    expect(result.path, testFile);
+    expect(result.uri.toString(), 'package:test/test.dart');
+    expect(result.content, content);
+    expect(result.contentHash, _md5(content));
+    expect(result.unit, isNotNull);
+    expect(result.errors, hasLength(0));
+
+    var f = result.unit.declarations[0] as FunctionDeclaration;
+    expect(f.name.staticType.toString(), '() → int');
+    expect(f.returnType.type.toString(), 'int');
+
+    // The same result is also received through the stream.
+    await _waitForIdle();
+    expect(allResults, [result]);
+  }
+
+  test_getResult_errors() async {
+    String content = 'main() { int vv; }';
+    _addTestFile(content, priority: true);
+
+    AnalysisResult result = await driver.getResult(testFile);
+    expect(result.path, testFile);
+    expect(result.errors, hasLength(1));
+    {
+      AnalysisError error = result.errors[0];
+      expect(error.offset, 13);
+      expect(error.length, 2);
+      expect(error.errorCode, HintCode.UNUSED_LOCAL_VARIABLE);
+      expect(error.message, "The value of the local variable 'vv' isn't used.");
+      expect(error.correction, "Try removing the variable, or using it.");
+    }
+  }
+
+  test_getResult_selfConsistent() async {
+    var a = _p('/test/lib/a.dart');
+    var b = _p('/test/lib/b.dart');
+    provider.newFile(
+        a,
+        r'''
+import 'b.dart';
+var A1 = 1;
+var A2 = B1;
+''');
+    provider.newFile(
+        b,
+        r'''
+import 'a.dart';
+var B1 = A1;
+''');
+
+    driver.addFile(a);
+    driver.addFile(b);
+    await _waitForIdle();
+
+    {
+      AnalysisResult result = await driver.getResult(a);
+      expect(_getTopLevelVarType(result.unit, 'A1'), 'int');
+      expect(_getTopLevelVarType(result.unit, 'A2'), 'int');
+    }
+
+    // Update "a" that that "A1" is now "double".
+    // Get result for "a".
+    //
+    // Even though we have not notified the driver about the change,
+    // we still get "double" for "A1", because getResult() re-read the content.
+    //
+    // We also get "double" for "A2", even though "A2" has the type from "b".
+    // That's because we check for "a" API signature consistency, and because
+    // it has changed, we invalidated the dependency cache, relinked libraries
+    // and recomputed types.
+    provider.updateFile(
+        a,
+        r'''
+import 'b.dart';
+var A1 = 1.2;
+var A2 = B1;
+''');
+    {
+      AnalysisResult result = await driver.getResult(a);
+      expect(_getTopLevelVarType(result.unit, 'A1'), 'double');
+      expect(_getTopLevelVarType(result.unit, 'A2'), 'double');
+    }
+  }
+
+  test_getResult_thenRemove() async {
+    _addTestFile('main() {}', priority: true);
+
+    Future<AnalysisResult> resultFuture = driver.getResult(testFile);
+    driver.removeFile(testFile);
+
+    AnalysisResult result = await resultFuture;
+    expect(result, isNotNull);
+    expect(result.path, testFile);
+    expect(result.unit, isNotNull);
+  }
+
+  test_getResult_twoPendingFutures() async {
+    String content = 'main() {}';
+    _addTestFile(content, priority: true);
+
+    Future<AnalysisResult> future1 = driver.getResult(testFile);
+    Future<AnalysisResult> future2 = driver.getResult(testFile);
+
+    // Both futures complete, with the same result.
+    AnalysisResult result1 = await future1;
+    AnalysisResult result2 = await future2;
+    expect(result2, same(result1));
+    expect(result1.path, testFile);
+    expect(result1.unit, isNotNull);
+  }
+
+  test_removeFile_changeFile_implicitlyAnalyzed() async {
+    var a = _p('/test/lib/a.dart');
+    var b = _p('/test/lib/b.dart');
+    provider.newFile(
+        a,
+        r'''
+import 'b.dart';
+var A = B;
+''');
+    provider.newFile(b, 'var B = 1;');
+
+    driver.priorityFiles = [a, b];
+    driver.addFile(a);
+    driver.addFile(b);
+
+    // We have results for both "a" and "b".
+    await _waitForIdle();
+    expect(allResults, hasLength(2));
+    {
+      AnalysisResult ar = allResults.firstWhere((r) => r.path == a);
+      expect(_getTopLevelVarType(ar.unit, 'A'), 'int');
+    }
+    {
+      AnalysisResult br = allResults.firstWhere((r) => r.path == b);
+      expect(_getTopLevelVarType(br.unit, 'B'), 'int');
+    }
+    allResults.clear();
+
+    // Remove "b" and send the change notification.
+    provider.updateFile(b, 'var B = 1.2;');
+    driver.removeFile(b);
+    driver.changeFile(b);
+
+    // While "b" is not analyzed explicitly, it is analyzed implicitly.
+    // We don't get a result for "b".
+    // But the change causes "a" to be reanalyzed.
+    await _waitForIdle();
+    expect(allResults, hasLength(1));
+    {
+      AnalysisResult ar = allResults.firstWhere((r) => r.path == a);
+      expect(_getTopLevelVarType(ar.unit, 'A'), 'double');
+    }
+  }
+
+  test_removeFile_changeFile_notAnalyzed() async {
+    _addTestFile('main() {}');
+
+    // We have a result.
+    await _waitForIdle();
+    expect(allResults, hasLength(1));
+    expect(allResults[0].path, testFile);
+    allResults.clear();
+
+    // Remove the file and send the change notification.
+    // The change notification does nothing, because the file is explicitly
+    // or implicitly analyzed.
+    driver.removeFile(testFile);
+    driver.changeFile(testFile);
+
+    await _waitForIdle();
+    expect(allResults, isEmpty);
+  }
+
+  test_results_priority() async {
+    String content = 'int f() => 42;';
+    _addTestFile(content, priority: true);
+
+    await _waitForIdle();
+
+    expect(allResults, hasLength(1));
+    AnalysisResult result = allResults.single;
+    expect(result.path, testFile);
+    expect(result.uri.toString(), 'package:test/test.dart');
+    expect(result.content, content);
+    expect(result.contentHash, _md5(content));
+    expect(result.unit, isNotNull);
+    expect(result.errors, hasLength(0));
+
+    var f = result.unit.declarations[0] as FunctionDeclaration;
+    expect(f.name.staticType.toString(), '() → int');
+    expect(f.returnType.type.toString(), 'int');
+  }
+
+  test_results_priorityFirst() async {
+    var a = _p('/test/lib/a.dart');
+    var b = _p('/test/lib/b.dart');
+    var c = _p('/test/lib/c.dart');
+    provider.newFile(a, 'class A {}');
+    provider.newFile(b, 'class B {}');
+    provider.newFile(c, 'class C {}');
+
+    driver.addFile(a);
+    driver.addFile(b);
+    driver.addFile(c);
+    driver.priorityFiles = [b];
+    await _waitForIdle();
+
+    expect(allResults, hasLength(3));
+    AnalysisResult result = allResults[0];
+    expect(result.path, b);
+    expect(result.unit, isNotNull);
+    expect(result.errors, hasLength(0));
+  }
+
+  test_results_regular() async {
+    String content = 'int f() => 42;';
+    _addTestFile(content);
+    await _waitForIdle();
+
+    expect(allResults, hasLength(1));
+    AnalysisResult result = allResults.single;
+    expect(result.path, testFile);
+    expect(result.uri.toString(), 'package:test/test.dart');
+    expect(result.content, isNull);
+    expect(result.contentHash, _md5(content));
+    expect(result.unit, isNull);
+    expect(result.errors, hasLength(0));
+  }
+
+  test_results_status() async {
+    _addTestFile('int f() => 42;');
+    await _waitForIdle();
+
+    expect(allStatuses, hasLength(2));
+    expect(allStatuses[0].isAnalyzing, isTrue);
+    expect(allStatuses[0].isIdle, isFalse);
+    expect(allStatuses[1].isAnalyzing, isFalse);
+    expect(allStatuses[1].isIdle, isTrue);
+  }
+
+  void _addTestFile(String content, {bool priority: false}) {
+    provider.newFile(testFile, content);
+    driver.addFile(testFile);
+    if (priority) {
+      driver.priorityFiles = [testFile];
+    }
+  }
+
+  VariableDeclaration _getTopLevelVar(CompilationUnit unit, String name) {
+    for (CompilationUnitMember declaration in unit.declarations) {
+      if (declaration is TopLevelVariableDeclaration) {
+        for (VariableDeclaration variable in declaration.variables.variables) {
+          if (variable.name.name == name) {
+            return variable;
+          }
+        }
+      }
+    }
+    fail('Cannot find the top-level variable $name in\n$unit');
+    return null;
+  }
+
+  String _getTopLevelVarType(CompilationUnit unit, String name) {
+    return _getTopLevelVar(unit, name).element.type.toString();
+  }
+
+  /**
+   * Return the [provider] specific path for the given Posix [path].
+   */
+  String _p(String path) => provider.convertPath(path);
+
+  Future<Null> _waitForIdle() async {
+    await idleStatusMonitor.signal;
+  }
+
+  static String _md5(String content) {
+    return hex.encode(md5.convert(UTF8.encode(content)).bytes);
+  }
+}
+
+class _Monitor {
+  Completer<Null> _completer = new Completer<Null>();
+
+  Future<Null> get signal async {
+    await _completer.future;
+    _completer = new Completer<Null>();
+  }
+
+  void notify() {
+    if (!_completer.isCompleted) {
+      _completer.complete(null);
+    }
+  }
+}
+
+class _TestByteStore implements ByteStore {
+  final map = <String, List<int>>{};
+
+  @override
+  List<int> get(String key) {
+    return map[key];
+  }
+
+  @override
+  void put(String key, List<int> bytes) {
+    map[key] = bytes;
+  }
+}
diff --git a/pkg/analyzer/test/src/dart/analysis/test_all.dart b/pkg/analyzer/test/src/dart/analysis/test_all.dart
new file mode 100644
index 0000000..fa508e7
--- /dev/null
+++ b/pkg/analyzer/test/src/dart/analysis/test_all.dart
@@ -0,0 +1,16 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+library analyzer.test.src.dart.analysis.test_all;
+
+import 'package:test_reflective_loader/test_reflective_loader.dart';
+
+import 'driver_test.dart' as driver;
+
+/// Utility for manually running all tests.
+main() {
+  defineReflectiveSuite(() {
+    driver.main();
+  }, name: 'analysis');
+}
diff --git a/pkg/analyzer/test/src/dart/test_all.dart b/pkg/analyzer/test/src/dart/test_all.dart
index 11368b5..78ac68f 100644
--- a/pkg/analyzer/test/src/dart/test_all.dart
+++ b/pkg/analyzer/test/src/dart/test_all.dart
@@ -6,6 +6,7 @@
 
 import 'package:test_reflective_loader/test_reflective_loader.dart';
 
+import 'analysis/test_all.dart' as analysis;
 import 'ast/test_all.dart' as ast;
 import 'constant/test_all.dart' as constant;
 import 'element/test_all.dart' as element;
@@ -14,6 +15,7 @@
 /// Utility for manually running all tests.
 main() {
   defineReflectiveSuite(() {
+    analysis.main();
     ast.main();
     constant.main();
     element.main();
diff --git a/pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart b/pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart
index 7aba120..0e95ce5 100644
--- a/pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart
+++ b/pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart
@@ -481,9 +481,7 @@
         });
       }
       if (analyzedElement.isGenerativeConstructor && cls.isAbstract) {
-        if (compiler.closedWorld.isDirectlyInstantiated(cls)) {
-          returnType = types.nonNullExact(cls);
-        } else if (compiler.closedWorld.isIndirectlyInstantiated(cls)) {
+        if (compiler.closedWorld.isInstantiated(cls)) {
           returnType = types.nonNullSubclass(cls);
         } else {
           // TODO(johnniwinther): Avoid analyzing [analyzedElement] in this
diff --git a/pkg/compiler/lib/src/ssa/optimize.dart b/pkg/compiler/lib/src/ssa/optimize.dart
index cbc92f6..e9bfd4a 100644
--- a/pkg/compiler/lib/src/ssa/optimize.dart
+++ b/pkg/compiler/lib/src/ssa/optimize.dart
@@ -2110,29 +2110,22 @@
       return;
     }
 
-    List<HInstruction> ifUsers = <HInstruction>[];
-    List<HInstruction> notIfUsers = <HInstruction>[];
+    List<HBasicBlock> trueTargets = <HBasicBlock>[];
+    List<HBasicBlock> falseTargets = <HBasicBlock>[];
 
-    collectIfUsers(instruction, ifUsers, notIfUsers);
+    collectTargets(instruction, trueTargets, falseTargets);
 
-    if (ifUsers.isEmpty && notIfUsers.isEmpty) return;
+    if (trueTargets.isEmpty && falseTargets.isEmpty) return;
 
     TypeMask convertedType =
         new TypeMask.nonNullSubtype(element, compiler.closedWorld);
     HInstruction input = instruction.expression;
 
-    for (HIf ifUser in ifUsers) {
-      insertTypePropagationForDominatedUsers(
-          ifUser.thenBlock, input, convertedType);
-      // TODO(ngeoffray): Also change uses for the else block on a type
-      // that knows it is not of a specific type.
+    for (HBasicBlock block in trueTargets) {
+      insertTypePropagationForDominatedUsers(block, input, convertedType);
     }
-    for (HIf ifUser in notIfUsers) {
-      insertTypePropagationForDominatedUsers(
-          ifUser.elseBlock, input, convertedType);
-      // TODO(ngeoffray): Also change uses for the then block on a type
-      // that knows it is not of a specific type.
-    }
+    // TODO(sra): Also strengthen uses for when the condition is known
+    // false. Avoid strengthening to `null`.
   }
 
   void visitIdentity(HIdentity instruction) {
@@ -2151,34 +2144,50 @@
 
     if (!input.instructionType.isNullable) return;
 
-    List<HInstruction> ifUsers = <HInstruction>[];
-    List<HInstruction> notIfUsers = <HInstruction>[];
+    List<HBasicBlock> trueTargets = <HBasicBlock>[];
+    List<HBasicBlock> falseTargets = <HBasicBlock>[];
 
-    collectIfUsers(instruction, ifUsers, notIfUsers);
+    collectTargets(instruction, trueTargets, falseTargets);
 
-    if (ifUsers.isEmpty && notIfUsers.isEmpty) return;
+    if (trueTargets.isEmpty && falseTargets.isEmpty) return;
 
     TypeMask nonNullType = input.instructionType.nonNullable();
 
-    for (HIf ifUser in ifUsers) {
-      insertTypePropagationForDominatedUsers(
-          ifUser.elseBlock, input, nonNullType);
-      // Uses in thenBlock are `null`, but probably not common.
+    for (HBasicBlock block in falseTargets) {
+      insertTypePropagationForDominatedUsers(block, input, nonNullType);
     }
-    for (HIf ifUser in notIfUsers) {
-      insertTypePropagationForDominatedUsers(
-          ifUser.thenBlock, input, nonNullType);
-      // Uses in elseBlock are `null`, but probably not common.
-    }
+    // We don't strengthen the known-true references. It doesn't happen often
+    // and we don't want "if (x==null) return x;" to convert between JavaScript
+    // 'null' and 'undefined'.
   }
 
-  collectIfUsers(HInstruction instruction, List<HInstruction> ifUsers,
-      List<HInstruction> notIfUsers) {
+  collectTargets(HInstruction instruction, List<HBasicBlock> trueTargets,
+                 List<HBasicBlock> falseTargets) {
     for (HInstruction user in instruction.usedBy) {
       if (user is HIf) {
-        ifUsers.add(user);
+        trueTargets?.add(user.thenBlock);
+        falseTargets?.add(user.elseBlock);
       } else if (user is HNot) {
-        collectIfUsers(user, notIfUsers, ifUsers);
+        collectTargets(user, falseTargets, trueTargets);
+      } else if (user is HPhi) {
+        List<HInstruction> inputs = user.inputs;
+        if (inputs.length == 2) {
+          assert(inputs.contains(instruction));
+          HInstruction other = inputs[(inputs[0] == instruction) ? 1 : 0];
+          if (other.isConstantTrue()) {
+            // The condition flows to a HPhi(true, user), which means that a
+            // downstream HIf has true-branch control flow that does not depend
+            // on the original instruction, so stop collecting [trueTargets].
+            collectTargets(user, null, falseTargets);
+          } else if (other.isConstantFalse()) {
+            // Ditto for false.
+            collectTargets(user, trueTargets, null);
+          }
+        }
+      } else if (user is HBoolify) {
+        // We collect targets for strictly boolean operations so HBoolify cannot
+        // change the result.
+        collectTargets(user, trueTargets, falseTargets);
       }
     }
   }
diff --git a/pkg/compiler/lib/src/types/union_type_mask.dart b/pkg/compiler/lib/src/types/union_type_mask.dart
index 8ba9a6a..49f9b44 100644
--- a/pkg/compiler/lib/src/types/union_type_mask.dart
+++ b/pkg/compiler/lib/src/types/union_type_mask.dart
@@ -88,6 +88,8 @@
   }
 
   static TypeMask flatten(List<FlatTypeMask> masks, ClosedWorld closedWorld) {
+    // TODO(johnniwinther): Move this computation to [ClosedWorld] and use the
+    // class set structures.
     assert(masks.length > 1);
     // If either type mask is a subtype type mask, we cannot use a
     // subclass type mask to represent their union.
@@ -104,7 +106,7 @@
     for (Entity candidate in candidates) {
       bool isInstantiatedStrictSubclass(cls) =>
           cls != candidate &&
-          closedWorld.isDirectlyInstantiated(cls) &&
+          closedWorld.isExplicitlyInstantiated(cls) &&
           closedWorld.isSubclassOf(cls, candidate);
 
       int size;
diff --git a/pkg/compiler/lib/src/universe/class_set.dart b/pkg/compiler/lib/src/universe/class_set.dart
index 637fd16..39f507a 100644
--- a/pkg/compiler/lib/src/universe/class_set.dart
+++ b/pkg/compiler/lib/src/universe/class_set.dart
@@ -6,6 +6,7 @@
 
 import 'dart:collection' show IterableBase;
 
+import '../common.dart';
 import '../elements/elements.dart' show ClassElement;
 import '../util/enumset.dart' show EnumSet;
 import '../util/util.dart' show Link;
@@ -15,6 +16,7 @@
   UNINSTANTIATED,
   DIRECTLY_INSTANTIATED,
   INDIRECTLY_INSTANTIATED,
+  ABSTRACTLY_INSTANTIATED,
 }
 
 /// Node for [cls] in a tree forming the subclass relation of [ClassElement]s.
@@ -49,16 +51,18 @@
   static final EnumSet<Instantiation> INSTANTIATED =
       new EnumSet<Instantiation>.fromValues(const <Instantiation>[
     Instantiation.DIRECTLY_INSTANTIATED,
-    Instantiation.INDIRECTLY_INSTANTIATED
+    Instantiation.INDIRECTLY_INSTANTIATED,
+    Instantiation.ABSTRACTLY_INSTANTIATED,
   ], fixed: true);
 
-  /// Enum set for selecting directly instantiated classes in
+  /// Enum set for selecting directly and abstractly instantiated classes in
   /// [ClassHierarchyNode.subclassesByMask],
   /// [ClassHierarchyNode.subclassesByMask] and [ClassSet.subtypesByMask].
-  static final EnumSet<Instantiation> DIRECTLY_INSTANTIATED =
-      new EnumSet<Instantiation>.fromValues(
-          const <Instantiation>[Instantiation.DIRECTLY_INSTANTIATED],
-          fixed: true);
+  static final EnumSet<Instantiation> EXPLICITLY_INSTANTIATED =
+      new EnumSet<Instantiation>.fromValues(const <Instantiation>[
+    Instantiation.DIRECTLY_INSTANTIATED,
+    Instantiation.ABSTRACTLY_INSTANTIATED
+  ], fixed: true);
 
   /// Enum set for selecting all classes in
   /// [ClassHierarchyNode.subclassesByMask],
@@ -72,7 +76,8 @@
   static EnumSet<Instantiation> createMask(
       {bool includeDirectlyInstantiated: true,
       bool includeIndirectlyInstantiated: true,
-      bool includeUninstantiated: true}) {
+      bool includeUninstantiated: true,
+      bool includeAbstractlyInstantiated: true}) {
     EnumSet<Instantiation> mask = new EnumSet<Instantiation>();
     if (includeDirectlyInstantiated) {
       mask.add(Instantiation.DIRECTLY_INSTANTIATED);
@@ -83,6 +88,9 @@
     if (includeUninstantiated) {
       mask.add(Instantiation.UNINSTANTIATED);
     }
+    if (includeAbstractlyInstantiated) {
+      mask.add(Instantiation.ABSTRACTLY_INSTANTIATED);
+    }
     return mask;
   }
 
@@ -106,23 +114,54 @@
 
   void set isDirectlyInstantiated(bool value) {
     if (value != isDirectlyInstantiated) {
-      ClassHierarchyNode parent = parentNode;
-      if (value) {
-        _mask.remove(Instantiation.UNINSTANTIATED);
-        _mask.add(Instantiation.DIRECTLY_INSTANTIATED);
-        while (parent != null) {
-          parent._updateInstantiatedSubclassCount(1);
-          parent = parent.parentNode;
-        }
-      } else {
-        _mask.remove(Instantiation.DIRECTLY_INSTANTIATED);
-        if (_mask.isEmpty) {
-          _mask.add(Instantiation.UNINSTANTIATED);
-        }
-        while (parent != null) {
-          parent._updateInstantiatedSubclassCount(-1);
-          parent = parent.parentNode;
-        }
+      _updateParentInstantiatedSubclassCount(
+          Instantiation.DIRECTLY_INSTANTIATED,
+          add: value);
+    }
+  }
+
+  /// `true` if [cls] has been abstractly instantiated. This means that at
+  /// runtime instances of [cls] or unknown subclasses of [cls] are assumed to
+  /// exist.
+  ///
+  /// This is used to mark native and/or reflectable classes as instantiated.
+  /// For native classes we do not know the exact class that instantiates [cls]
+  /// so [cls] here represents the root of the subclasses. For reflectable
+  /// classes we need event abstract classes to be 'live' even though they
+  /// cannot themselves be instantiated.
+  bool get isAbstractlyInstantiated =>
+      _mask.contains(Instantiation.ABSTRACTLY_INSTANTIATED);
+
+  void set isAbstractlyInstantiated(bool value) {
+    if (value != isAbstractlyInstantiated) {
+      _updateParentInstantiatedSubclassCount(
+          Instantiation.ABSTRACTLY_INSTANTIATED,
+          add: value);
+    }
+  }
+
+  /// `true` if [cls] is either directly or abstractly instantiated.
+  bool get isExplicitlyInstantiated =>
+      isDirectlyInstantiated || isAbstractlyInstantiated;
+
+  void _updateParentInstantiatedSubclassCount(Instantiation instantiation,
+      {bool add}) {
+    ClassHierarchyNode parent = parentNode;
+    if (add) {
+      _mask.remove(Instantiation.UNINSTANTIATED);
+      _mask.add(instantiation);
+      while (parent != null) {
+        parent._updateInstantiatedSubclassCount(1);
+        parent = parent.parentNode;
+      }
+    } else {
+      _mask.remove(instantiation);
+      if (_mask.isEmpty) {
+        _mask.add(Instantiation.UNINSTANTIATED);
+      }
+      while (parent != null) {
+        parent._updateInstantiatedSubclassCount(-1);
+        parent = parent.parentNode;
       }
     }
   }
@@ -188,8 +227,9 @@
     return false;
   }
 
-  /// `true` if [cls] has been directly or indirectly instantiated.
-  bool get isInstantiated => isDirectlyInstantiated || isIndirectlyInstantiated;
+  /// `true` if [cls] has been directly, indirectly, or abstractly instantiated.
+  bool get isInstantiated =>
+      isExplicitlyInstantiated || isIndirectlyInstantiated;
 
   /// Returns an [Iterable] of the subclasses of [cls] possibly including [cls].
   ///
@@ -270,9 +310,12 @@
   }
 
   ClassElement _computeLeastUpperInstantiatedSubclass() {
-    if (isDirectlyInstantiated) {
+    if (isExplicitlyInstantiated) {
       return cls;
     }
+    if (!isInstantiated) {
+      return null;
+    }
     ClassHierarchyNode subclass;
     for (Link<ClassHierarchyNode> link = _directSubclasses;
         !link.isEmpty;
@@ -311,6 +354,9 @@
     if (isIndirectlyInstantiated) {
       sb.write(' indirectly');
     }
+    if (isAbstractlyInstantiated) {
+      sb.write(' abstractly');
+    }
     sb.write(' [');
     if (_directSubclasses.isEmpty) {
       sb.write(']');
@@ -439,7 +485,7 @@
     int count = node.instantiatedSubclassCount;
     if (_subtypes != null) {
       for (ClassHierarchyNode subtypeNode in _subtypes) {
-        if (subtypeNode.isDirectlyInstantiated) {
+        if (subtypeNode.isExplicitlyInstantiated) {
           count++;
         }
         count += subtypeNode.instantiatedSubclassCount;
@@ -647,7 +693,7 @@
   }
 
   ClassElement _computeLeastUpperInstantiatedSubtype() {
-    if (node.isDirectlyInstantiated) {
+    if (node.isExplicitlyInstantiated) {
       return cls;
     }
     if (_subtypes == null) {
diff --git a/pkg/compiler/lib/src/universe/world_builder.dart b/pkg/compiler/lib/src/universe/world_builder.dart
index d574f3a..470adf3 100644
--- a/pkg/compiler/lib/src/universe/world_builder.dart
+++ b/pkg/compiler/lib/src/universe/world_builder.dart
@@ -10,6 +10,8 @@
 import '../compiler.dart' show Compiler;
 import '../dart_types.dart';
 import '../elements/elements.dart';
+import '../universe/class_set.dart' show Instantiation;
+import '../util/enumset.dart';
 import '../util/util.dart';
 import '../world.dart' show World, ClosedWorld, OpenWorld;
 import 'selector.dart' show Selector;
@@ -156,6 +158,10 @@
 
   /// Set of all fields that are statically known to be written to.
   Iterable<Element> get fieldSetters;
+
+  /// Call [f] for all directly or abstractly instantiated classes.
+  void forEachInstantiatedClass(
+      f(ClassElement cls, EnumSet<Instantiation> instantiations));
 }
 
 class ResolutionWorldBuilderImpl implements ResolutionWorldBuilder {
@@ -166,8 +172,8 @@
   /// Invariant: Elements are declaration elements.
   // TODO(johnniwinther): [_directlyInstantiatedClasses] and
   // [_instantiatedTypes] sets should be merged.
-  final Set<ClassElement> _directlyInstantiatedClasses =
-      new Set<ClassElement>();
+  final Map<ClassElement, EnumSet<Instantiation>> _directlyInstantiatedClasses =
+      <ClassElement, EnumSet<Instantiation>>{};
 
   /// The set of all directly instantiated types, that is, the types of the
   /// directly instantiated classes.
@@ -237,7 +243,7 @@
   /// super-call.
   // TODO(johnniwinther): Improve semantic precision.
   Iterable<ClassElement> get directlyInstantiatedClasses {
-    return _directlyInstantiatedClasses;
+    return _directlyInstantiatedClasses.keys;
   }
 
   /// All directly instantiated types, that is, the types of the directly
@@ -280,7 +286,13 @@
         // TODO(herhut): Track classes required by mirrors seperately.
         ||
         byMirrors) {
-      _directlyInstantiatedClasses.add(cls);
+      EnumSet<Instantiation> instantiations = _directlyInstantiatedClasses
+          .putIfAbsent(cls, () => new EnumSet<Instantiation>());
+      if (isNative || byMirrors) {
+        instantiations.add(Instantiation.ABSTRACTLY_INSTANTIATED);
+      } else {
+        instantiations.add(Instantiation.DIRECTLY_INSTANTIATED);
+      }
     }
 
     // TODO(johnniwinther): Replace this by separate more specific mappings that
@@ -295,6 +307,12 @@
     }
   }
 
+  @override
+  void forEachInstantiatedClass(
+      f(ClassElement cls, EnumSet<Instantiation> instantiations)) {
+    _directlyInstantiatedClasses.forEach(f);
+  }
+
   bool _hasMatchingSelector(Map<Selector, SelectorConstraints> selectors,
       Element member, OpenWorld world) {
     if (selectors == null) return false;
diff --git a/pkg/compiler/lib/src/world.dart b/pkg/compiler/lib/src/world.dart
index c6a20e0..dbeee8a 100644
--- a/pkg/compiler/lib/src/world.dart
+++ b/pkg/compiler/lib/src/world.dart
@@ -25,6 +25,7 @@
 import 'universe/function_set.dart' show FunctionSet;
 import 'universe/selector.dart' show Selector;
 import 'universe/side_effects.dart' show SideEffects;
+import 'util/enumset.dart';
 import 'util/util.dart' show Link;
 
 /// Common superinterface for [OpenWorld] and [ClosedWorld].
@@ -48,9 +49,26 @@
   /// Returns `true` if [cls] is either directly or indirectly instantiated.
   bool isInstantiated(ClassElement cls);
 
-  /// Returns `true` if [cls] is directly instantiated.
+  /// Returns `true` if [cls] is directly instantiated. This means that at
+  /// runtime instances of exactly [cls] are assumed to exist.
   bool isDirectlyInstantiated(ClassElement cls);
 
+  /// Returns `true` if [cls] is abstractly instantiated. This means that at
+  /// runtime instances of [cls] or unknown subclasses of [cls] are assumed to
+  /// exist.
+  ///
+  /// This is used to mark native and/or reflectable classes as instantiated.
+  /// For native classes we do not know the exact class that instantiates [cls]
+  /// so [cls] here represents the root of the subclasses. For reflectable
+  /// classes we need event abstract classes to be 'live' even though they
+  /// cannot themselves be instantiated.
+  bool isAbstractlyInstantiated(ClassElement cls);
+
+  /// Returns `true` if [cls] is either directly or abstractly instantiated.
+  ///
+  /// See [isDirectlyInstantiated] and [isAbstractlyInstantiated].
+  bool isExplicitlyInstantiated(ClassElement cls);
+
   /// Returns `true` if [cls] is indirectly instantiated, that is through a
   /// subclass.
   bool isIndirectlyInstantiated(ClassElement cls);
@@ -393,6 +411,20 @@
   }
 
   @override
+  bool isAbstractlyInstantiated(ClassElement cls) {
+    assert(isClosed);
+    ClassHierarchyNode node = _classHierarchyNodes[cls.declaration];
+    return node != null && node.isAbstractlyInstantiated;
+  }
+
+  @override
+  bool isExplicitlyInstantiated(ClassElement cls) {
+    assert(isClosed);
+    ClassHierarchyNode node = _classHierarchyNodes[cls.declaration];
+    return node != null && node.isExplicitlyInstantiated;
+  }
+
+  @override
   bool isIndirectlyInstantiated(ClassElement cls) {
     assert(isClosed);
     ClassHierarchyNode node = _classHierarchyNodes[cls.declaration];
@@ -414,7 +446,8 @@
     assert(isClosed);
     ClassHierarchyNode hierarchy = _classHierarchyNodes[cls.declaration];
     if (hierarchy == null) return const <ClassElement>[];
-    return hierarchy.subclassesByMask(ClassHierarchyNode.DIRECTLY_INSTANTIATED);
+    return hierarchy
+        .subclassesByMask(ClassHierarchyNode.EXPLICITLY_INSTANTIATED);
   }
 
   /// Returns an iterable over the directly instantiated classes that extend
@@ -423,7 +456,8 @@
     assert(isClosed);
     ClassHierarchyNode subclasses = _classHierarchyNodes[cls.declaration];
     if (subclasses == null) return const <ClassElement>[];
-    return subclasses.subclassesByMask(ClassHierarchyNode.DIRECTLY_INSTANTIATED,
+    return subclasses.subclassesByMask(
+        ClassHierarchyNode.EXPLICITLY_INSTANTIATED,
         strict: true);
   }
 
@@ -443,7 +477,7 @@
     assert(isClosed);
     ClassHierarchyNode subclasses = _classHierarchyNodes[cls.declaration];
     if (subclasses == null) return;
-    subclasses.forEachSubclass(f, ClassHierarchyNode.DIRECTLY_INSTANTIATED,
+    subclasses.forEachSubclass(f, ClassHierarchyNode.EXPLICITLY_INSTANTIATED,
         strict: true);
   }
 
@@ -454,7 +488,7 @@
     ClassHierarchyNode subclasses = _classHierarchyNodes[cls.declaration];
     if (subclasses == null) return false;
     return subclasses.anySubclass(
-        predicate, ClassHierarchyNode.DIRECTLY_INSTANTIATED,
+        predicate, ClassHierarchyNode.EXPLICITLY_INSTANTIATED,
         strict: true);
   }
 
@@ -466,7 +500,8 @@
     if (classSet == null) {
       return const <ClassElement>[];
     } else {
-      return classSet.subtypesByMask(ClassHierarchyNode.DIRECTLY_INSTANTIATED);
+      return classSet
+          .subtypesByMask(ClassHierarchyNode.EXPLICITLY_INSTANTIATED);
     }
   }
 
@@ -478,7 +513,7 @@
     if (classSet == null) {
       return const <ClassElement>[];
     } else {
-      return classSet.subtypesByMask(ClassHierarchyNode.DIRECTLY_INSTANTIATED,
+      return classSet.subtypesByMask(ClassHierarchyNode.EXPLICITLY_INSTANTIATED,
           strict: true);
     }
   }
@@ -499,7 +534,7 @@
     assert(isClosed);
     ClassSet classSet = _classSets[cls.declaration];
     if (classSet == null) return;
-    classSet.forEachSubtype(f, ClassHierarchyNode.DIRECTLY_INSTANTIATED,
+    classSet.forEachSubtype(f, ClassHierarchyNode.EXPLICITLY_INSTANTIATED,
         strict: true);
   }
 
@@ -510,7 +545,7 @@
     ClassSet classSet = _classSets[cls.declaration];
     if (classSet == null) return false;
     return classSet.anySubtype(
-        predicate, ClassHierarchyNode.DIRECTLY_INSTANTIATED,
+        predicate, ClassHierarchyNode.EXPLICITLY_INSTANTIATED,
         strict: true);
   }
 
@@ -769,7 +804,7 @@
         // The root subclass has a concrete implementation so no subclass needs
         // noSuchMethod handling.
         return false;
-      } else if (rootNode.isDirectlyInstantiated) {
+      } else if (rootNode.isExplicitlyInstantiated) {
         // The root class need noSuchMethod handling.
         return true;
       }
@@ -781,7 +816,7 @@
           // Stop fast - we found a need for noSuchMethod handling.
           return IterationStep.STOP;
         }
-      }, ClassHierarchyNode.DIRECTLY_INSTANTIATED, strict: true);
+      }, ClassHierarchyNode.EXPLICITLY_INSTANTIATED, strict: true);
       // We stopped fast so we need noSuchMethod handling.
       return result == IterationStep.STOP;
     }
@@ -943,19 +978,22 @@
   }
 
   void _updateClassHierarchyNodeForClass(ClassElement cls,
-      {bool directlyInstantiated: false}) {
+      {bool directlyInstantiated: false, bool abstractlyInstantiated: false}) {
     ClassHierarchyNode node = getClassHierarchyNode(cls);
     _updateSuperClassHierarchyNodeForClass(node);
     if (directlyInstantiated) {
       node.isDirectlyInstantiated = true;
     }
+    if (abstractlyInstantiated) {
+      node.isAbstractlyInstantiated = true;
+    }
   }
 
   ClosedWorld closeWorld() {
     /// Updates the `isDirectlyInstantiated` and `isIndirectlyInstantiated`
     /// properties of the [ClassHierarchyNode] for [cls].
 
-    void addSubtypes(ClassElement cls) {
+    void addSubtypes(ClassElement cls, EnumSet<Instantiation> instantiations) {
       if (_compiler.options.hasIncrementalSupport &&
           !alreadyPopulated.add(cls)) {
         return;
@@ -965,7 +1003,11 @@
         reporter.internalError(cls, 'Class "${cls.name}" is not resolved.');
       }
 
-      _updateClassHierarchyNodeForClass(cls, directlyInstantiated: true);
+      _updateClassHierarchyNodeForClass(cls,
+          directlyInstantiated:
+              instantiations.contains(Instantiation.DIRECTLY_INSTANTIATED),
+          abstractlyInstantiated:
+              instantiations.contains(Instantiation.ABSTRACTLY_INSTANTIATED));
 
       // Walk through the superclasses, and record the types
       // implemented by that type on the superclasses.
@@ -985,7 +1027,7 @@
     // classes: if the superclass of these classes require RTI, then
     // they also need RTI, so that a constructor passes the type
     // variables to the super constructor.
-    _compiler.resolverWorld.directlyInstantiatedClasses.forEach(addSubtypes);
+    _compiler.resolverWorld.forEachInstantiatedClass(addSubtypes);
 
     _closed = true;
     return this;
diff --git a/pkg/dev_compiler/README.md b/pkg/dev_compiler/README.md
index 713d45b..7d3a3dd 100644
--- a/pkg/dev_compiler/README.md
+++ b/pkg/dev_compiler/README.md
@@ -11,7 +11,7 @@
 
 DDC attempts to map to idiomatic EcmaScript 6 (ES6) as cleanly as possible.  To do this while cohering to Dart semantics, DDC relies heavily on static type information, static checking, and runtime assertions.
 
-DDC is intended to support a very [large subset](https://github.com/dart-lang/dev_compiler/blob/master/STRONG_MODE.md) of Dart.  If a program does not statically check, DDC will not result in valid generated code.  Our goal is that a program execution (of a valid program) that runs without triggering runtime assertions should run the same on other Dart platforms under checked mode or production mode.
+DDC is intended to support a very [large subset](https://github.com/dart-lang/sdk/blob/master/pkg/dev_compiler/STRONG_MODE.md) of Dart.  If a program does not statically check, DDC will not result in valid generated code.  Our goal is that a program execution (of a valid program) that runs without triggering runtime assertions should run the same on other Dart platforms under checked mode or production mode.
 
 DDC does support untyped Dart code, but it will typically result in less readable and less efficient ES6 output.
 
@@ -28,4 +28,4 @@
 
 We are targeting the subset of ES6 supported in Chrome.
 
-To try out DDC and/or give feedback, please read our [usage](https://github.com/dart-lang/dev_compiler/blob/master/USAGE.md) page.
+To try out DDC and/or give feedback, please read our [usage](https://github.com/dart-lang/sdk/blob/master/pkg/dev_compiler/USAGE.md) page.
diff --git a/pkg/dev_compiler/lib/js/amd/dart_sdk.js b/pkg/dev_compiler/lib/js/amd/dart_sdk.js
index 9c95125..e50f74c 100644
--- a/pkg/dev_compiler/lib/js/amd/dart_sdk.js
+++ b/pkg/dev_compiler/lib/js/amd/dart_sdk.js
@@ -15609,113 +15609,113 @@
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getFloat32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getFloat32](byteOffset, littleEndian) {
-      return this.getFloat32(byteOffset, littleEndian);
+    [_getFloat32](...args) {
+      return this.getFloat32.apply(this, args);
     }
     [dartx.getFloat64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getFloat64](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getFloat64](byteOffset, littleEndian) {
-      return this.getFloat64(byteOffset, littleEndian);
+    [_getFloat64](...args) {
+      return this.getFloat64.apply(this, args);
     }
     [dartx.getInt16](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getInt16](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getInt16](byteOffset, littleEndian) {
-      return this.getInt16(byteOffset, littleEndian);
+    [_getInt16](...args) {
+      return this.getInt16.apply(this, args);
     }
     [dartx.getInt32](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getInt32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getInt32](byteOffset, littleEndian) {
-      return this.getInt32(byteOffset, littleEndian);
+    [_getInt32](...args) {
+      return this.getInt32.apply(this, args);
     }
     [dartx.getInt64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Int64 accessor not supported by dart2js.'));
     }
-    [dartx.getInt8](byteOffset) {
-      return this.getInt8(byteOffset);
+    [dartx.getInt8](...args) {
+      return this.getInt8.apply(this, args);
     }
     [dartx.getUint16](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getUint16](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getUint16](byteOffset, littleEndian) {
-      return this.getUint16(byteOffset, littleEndian);
+    [_getUint16](...args) {
+      return this.getUint16.apply(this, args);
     }
     [dartx.getUint32](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getUint32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getUint32](byteOffset, littleEndian) {
-      return this.getUint32(byteOffset, littleEndian);
+    [_getUint32](...args) {
+      return this.getUint32.apply(this, args);
     }
     [dartx.getUint64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Uint64 accessor not supported by dart2js.'));
     }
-    [dartx.getUint8](byteOffset) {
-      return this.getUint8(byteOffset);
+    [dartx.getUint8](...args) {
+      return this.getUint8.apply(this, args);
     }
     [dartx.setFloat32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setFloat32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setFloat32](byteOffset, value, littleEndian) {
-      return this.setFloat32(byteOffset, value, littleEndian);
+    [_setFloat32](...args) {
+      return this.setFloat32.apply(this, args);
     }
     [dartx.setFloat64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setFloat64](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setFloat64](byteOffset, value, littleEndian) {
-      return this.setFloat64(byteOffset, value, littleEndian);
+    [_setFloat64](...args) {
+      return this.setFloat64.apply(this, args);
     }
     [dartx.setInt16](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setInt16](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setInt16](byteOffset, value, littleEndian) {
-      return this.setInt16(byteOffset, value, littleEndian);
+    [_setInt16](...args) {
+      return this.setInt16.apply(this, args);
     }
     [dartx.setInt32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setInt32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setInt32](byteOffset, value, littleEndian) {
-      return this.setInt32(byteOffset, value, littleEndian);
+    [_setInt32](...args) {
+      return this.setInt32.apply(this, args);
     }
     [dartx.setInt64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Int64 accessor not supported by dart2js.'));
     }
-    [dartx.setInt8](byteOffset, value) {
-      return this.setInt8(byteOffset, value);
+    [dartx.setInt8](...args) {
+      return this.setInt8.apply(this, args);
     }
     [dartx.setUint16](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setUint16](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setUint16](byteOffset, value, littleEndian) {
-      return this.setUint16(byteOffset, value, littleEndian);
+    [_setUint16](...args) {
+      return this.setUint16.apply(this, args);
     }
     [dartx.setUint32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setUint32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setUint32](byteOffset, value, littleEndian) {
-      return this.setUint32(byteOffset, value, littleEndian);
+    [_setUint32](...args) {
+      return this.setUint32.apply(this, args);
     }
     [dartx.setUint64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Uint64 accessor not supported by dart2js.'));
     }
-    [dartx.setUint8](byteOffset, value) {
-      return this.setUint8(byteOffset, value);
+    [dartx.setUint8](...args) {
+      return this.setUint8.apply(this, args);
     }
     static _create1(arg) {
       return new DataView(new ArrayBuffer(arg));
@@ -38349,21 +38349,21 @@
     get [dartx.source]() {
       return this.source;
     }
-    [dartx.advance](count) {
-      return this.advance(count);
+    [dartx.advance](...args) {
+      return this.advance.apply(this, args);
     }
-    [dartx.continuePrimaryKey](key, primaryKey) {
-      return this.continuePrimaryKey(key, primaryKey);
+    [dartx.continuePrimaryKey](...args) {
+      return this.continuePrimaryKey.apply(this, args);
     }
-    [_delete]() {
-      return this.delete();
+    [_delete](...args) {
+      return this.delete.apply(this, args);
     }
     [_update](value) {
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_update_1](value_1);
     }
-    [_update_1](value) {
-      return this.update(value);
+    [_update_1](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.Cursor, {
@@ -38441,14 +38441,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_addEventListener](type, listener, capture) {
-      return this.addEventListener(type, listener, capture);
+    [_addEventListener](...args) {
+      return this.addEventListener.apply(this, args);
     }
-    [dartx.dispatchEvent](event) {
-      return this.dispatchEvent(event);
+    [dartx.dispatchEvent](...args) {
+      return this.dispatchEvent.apply(this, args);
     }
-    [_removeEventListener](type, listener, capture) {
-      return this.removeEventListener(type, listener, capture);
+    [_removeEventListener](...args) {
+      return this.removeEventListener.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.EventTarget, '_created');
@@ -38521,8 +38521,8 @@
       }
       return this[_transaction](storeNames, mode);
     }
-    [_transaction](stores, mode) {
-      return this.transaction(stores, mode);
+    [_transaction](...args) {
+      return this.transaction.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -38536,8 +38536,8 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [_createObjectStore](name, options) {
       if (options === void 0) options = null;
@@ -38547,14 +38547,14 @@
       }
       return this[_createObjectStore_2](name);
     }
-    [_createObjectStore_1](name, options) {
-      return this.createObjectStore(name, options);
+    [_createObjectStore_1](...args) {
+      return this.createObjectStore.apply(this, args);
     }
-    [_createObjectStore_2](name) {
-      return this.createObjectStore(name);
+    [_createObjectStore_2](...args) {
+      return this.createObjectStore.apply(this, args);
     }
-    [dartx.deleteObjectStore](name) {
-      return this.deleteObjectStore(name);
+    [dartx.deleteObjectStore](...args) {
+      return this.deleteObjectStore.apply(this, args);
     }
     get [dartx.onAbort]() {
       return indexed_db.Database.abortEvent.forTarget(this);
@@ -38693,17 +38693,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cmp](first, second) {
-      return this.cmp(first, second);
+    [dartx.cmp](...args) {
+      return this.cmp.apply(this, args);
     }
-    [_deleteDatabase](name) {
-      return this.deleteDatabase(name);
+    [_deleteDatabase](...args) {
+      return this.deleteDatabase.apply(this, args);
     }
-    [_open](name, version) {
-      return this.open(name, version);
+    [_open](...args) {
+      return this.open.apply(this, args);
     }
-    [_webkitGetDatabaseNames]() {
-      return this.webkitGetDatabaseNames();
+    [_webkitGetDatabaseNames](...args) {
+      return this.webkitGetDatabaseNames.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.IdbFactory, {
@@ -38846,26 +38846,26 @@
     get [dartx.unique]() {
       return this.unique;
     }
-    [_count$0](key) {
-      return this.count(key);
+    [_count$0](...args) {
+      return this.count.apply(this, args);
     }
-    [_get$](key) {
-      return this.get(key);
+    [_get$](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](range, maxCount) {
-      return this.getAll(range, maxCount);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.getAllKeys](range, maxCount) {
-      return this.getAllKeys(range, maxCount);
+    [dartx.getAllKeys](...args) {
+      return this.getAllKeys.apply(this, args);
     }
-    [_getKey$](key) {
-      return this.getKey(key);
+    [_getKey$](...args) {
+      return this.getKey.apply(this, args);
     }
-    [_openCursor](range, direction) {
-      return this.openCursor(range, direction);
+    [_openCursor](...args) {
+      return this.openCursor.apply(this, args);
     }
-    [_openKeyCursor](range, direction) {
-      return this.openKeyCursor(range, direction);
+    [_openKeyCursor](...args) {
+      return this.openKeyCursor.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.Index, {
@@ -39119,17 +39119,17 @@
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_add_2](value_1);
     }
-    [_add_1](value, key) {
-      return this.add(value, key);
+    [_add_1](...args) {
+      return this.add.apply(this, args);
     }
-    [_add_2](value) {
-      return this.add(value);
+    [_add_2](...args) {
+      return this.add.apply(this, args);
     }
-    [_clear$0]() {
-      return this.clear();
+    [_clear$0](...args) {
+      return this.clear.apply(this, args);
     }
-    [_count$0](key) {
-      return this.count(key);
+    [_count$0](...args) {
+      return this.count.apply(this, args);
     }
     [_createIndex](name, keyPath, options) {
       if (options === void 0) options = null;
@@ -39139,35 +39139,35 @@
       }
       return this[_createIndex_2](name, keyPath);
     }
-    [_createIndex_1](name, keyPath, options) {
-      return this.createIndex(name, keyPath, options);
+    [_createIndex_1](...args) {
+      return this.createIndex.apply(this, args);
     }
-    [_createIndex_2](name, keyPath) {
-      return this.createIndex(name, keyPath);
+    [_createIndex_2](...args) {
+      return this.createIndex.apply(this, args);
     }
-    [_delete](key) {
-      return this.delete(key);
+    [_delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.deleteIndex](name) {
-      return this.deleteIndex(name);
+    [dartx.deleteIndex](...args) {
+      return this.deleteIndex.apply(this, args);
     }
-    [_get$](key) {
-      return this.get(key);
+    [_get$](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](range, maxCount) {
-      return this.getAll(range, maxCount);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.getAllKeys](range, maxCount) {
-      return this.getAllKeys(range, maxCount);
+    [dartx.getAllKeys](...args) {
+      return this.getAllKeys.apply(this, args);
     }
-    [dartx.index](name) {
-      return this.index(name);
+    [dartx.index](...args) {
+      return this.index.apply(this, args);
     }
-    [_openCursor](range, direction) {
-      return this.openCursor(range, direction);
+    [_openCursor](...args) {
+      return this.openCursor.apply(this, args);
     }
-    [dartx.openKeyCursor](range, direction) {
-      return this.openKeyCursor(range, direction);
+    [dartx.openKeyCursor](...args) {
+      return this.openKeyCursor.apply(this, args);
     }
     [_put](value, key) {
       if (key === void 0) key = null;
@@ -39179,11 +39179,11 @@
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_put_2](value_1);
     }
-    [_put_1](value, key) {
-      return this.put(value, key);
+    [_put_1](...args) {
+      return this.put.apply(this, args);
     }
-    [_put_2](value) {
-      return this.put(value);
+    [_put_2](...args) {
+      return this.put.apply(this, args);
     }
     static _cursorStreamFromResult(T) {
       return (request, autoAdvance) => {
@@ -39398,11 +39398,11 @@
     get [dartx.objectStoreNames]() {
       return this.objectStoreNames;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.objectStore](name) {
-      return this.objectStore(name);
+    [dartx.objectStore](...args) {
+      return this.objectStore.apply(this, args);
     }
     get [dartx.onAbort]() {
       return indexed_db.Transaction.abortEvent.forTarget(this);
@@ -39549,17 +39549,17 @@
     get [dartx.type]() {
       return this.type;
     }
-    [_initEvent](type, bubbles, cancelable) {
-      return this.initEvent(type, bubbles, cancelable);
+    [_initEvent](...args) {
+      return this.initEvent.apply(this, args);
     }
-    [dartx.preventDefault]() {
-      return this.preventDefault();
+    [dartx.preventDefault](...args) {
+      return this.preventDefault.apply(this, args);
     }
-    [dartx.stopImmediatePropagation]() {
-      return this.stopImmediatePropagation();
+    [dartx.stopImmediatePropagation](...args) {
+      return this.stopImmediatePropagation.apply(this, args);
     }
-    [dartx.stopPropagation]() {
-      return this.stopPropagation();
+    [dartx.stopPropagation](...args) {
+      return this.stopPropagation.apply(this, args);
     }
   };
   dart.setSignature(html$.Event, {
@@ -39860,26 +39860,26 @@
     set [dartx.text](value) {
       this.textContent = value;
     }
-    [dartx.append](node) {
-      return this.appendChild(node);
+    [dartx.append](...args) {
+      return this.appendChild.apply(this, args);
     }
-    [dartx.clone](deep) {
-      return this.cloneNode(deep);
+    [dartx.clone](...args) {
+      return this.cloneNode.apply(this, args);
     }
-    [dartx.contains](other) {
-      return this.contains(other);
+    [dartx.contains](...args) {
+      return this.contains.apply(this, args);
     }
-    [dartx.hasChildNodes]() {
-      return this.hasChildNodes();
+    [dartx.hasChildNodes](...args) {
+      return this.hasChildNodes.apply(this, args);
     }
-    [dartx.insertBefore](node, child) {
-      return this.insertBefore(node, child);
+    [dartx.insertBefore](...args) {
+      return this.insertBefore.apply(this, args);
     }
-    [_removeChild](child) {
-      return this.removeChild(child);
+    [_removeChild](...args) {
+      return this.removeChild.apply(this, args);
     }
-    [_replaceChild](node, child) {
-      return this.replaceChild(node, child);
+    [_replaceChild](...args) {
+      return this.replaceChild.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.Node, '_created');
@@ -40359,8 +40359,8 @@
       let convertedTiming = core.Map.is(timing) ? html_common.convertDartToNative_Dictionary(timing) : timing;
       return convertedTiming == null ? this[_animate](convertedFrames) : this[_animate](convertedFrames, convertedTiming);
     }
-    [_animate](effect, timing) {
-      return this.animate(effect, timing);
+    [_animate](...args) {
+      return this.animate.apply(this, args);
     }
     [dartx.attributeChanged](name, oldValue, newValue) {}
     get [_xtag]() {
@@ -40420,8 +40420,8 @@
         this[_insertAdjacentNode](where, html$.Text.new(text));
       }
     }
-    [_insertAdjacentText](where, text) {
-      return this.insertAdjacentText(where, text);
+    [_insertAdjacentText](...args) {
+      return this.insertAdjacentText.apply(this, args);
     }
     [dartx.insertAdjacentHtml](where, html, opts) {
       let validator = opts && 'validator' in opts ? opts.validator : null;
@@ -40432,8 +40432,8 @@
         this[_insertAdjacentNode](where, this[dartx.createFragment](html, {validator: validator, treeSanitizer: treeSanitizer}));
       }
     }
-    [_insertAdjacentHtml](where, text) {
-      return this.insertAdjacentHTML(where, text);
+    [_insertAdjacentHtml](...args) {
+      return this.insertAdjacentHTML.apply(this, args);
     }
     [dartx.insertAdjacentElement](where, element) {
       if (!!this.insertAdjacentElement) {
@@ -40443,8 +40443,8 @@
       }
       return element;
     }
-    [_insertAdjacentElement](where, element) {
-      return this.insertAdjacentElement(where, element);
+    [_insertAdjacentElement](...args) {
+      return this.insertAdjacentElement.apply(this, args);
     }
     [_insertAdjacentNode](where, node) {
       switch (where[dartx.toLowerCase]()) {
@@ -40758,14 +40758,14 @@
     set [dartx.dropzone](value) {
       this.webkitdropzone = value;
     }
-    [dartx.blur]() {
-      return this.blur();
+    [dartx.blur](...args) {
+      return this.blur.apply(this, args);
     }
-    [dartx.click]() {
-      return this.click();
+    [dartx.click](...args) {
+      return this.click.apply(this, args);
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
     get [_attributes$]() {
       return this.attributes;
@@ -40830,50 +40830,50 @@
     get [dartx.tagName]() {
       return this.tagName;
     }
-    [dartx.closest](selectors) {
-      return this.closest(selectors);
+    [dartx.closest](...args) {
+      return this.closest.apply(this, args);
     }
-    [dartx.getAnimations]() {
-      return this.getAnimations();
+    [dartx.getAnimations](...args) {
+      return this.getAnimations.apply(this, args);
     }
-    [dartx.getAttribute](name) {
-      return this.getAttribute(name);
+    [dartx.getAttribute](...args) {
+      return this.getAttribute.apply(this, args);
     }
-    [dartx.getAttributeNS](namespaceURI, localName) {
-      return this.getAttributeNS(namespaceURI, localName);
+    [dartx.getAttributeNS](...args) {
+      return this.getAttributeNS.apply(this, args);
     }
-    [dartx.getBoundingClientRect]() {
-      return this.getBoundingClientRect();
+    [dartx.getBoundingClientRect](...args) {
+      return this.getBoundingClientRect.apply(this, args);
     }
-    [dartx.getClientRects]() {
-      return this.getClientRects();
+    [dartx.getClientRects](...args) {
+      return this.getClientRects.apply(this, args);
     }
-    [dartx.getDestinationInsertionPoints]() {
-      return this.getDestinationInsertionPoints();
+    [dartx.getDestinationInsertionPoints](...args) {
+      return this.getDestinationInsertionPoints.apply(this, args);
     }
-    [dartx.getElementsByClassName](classNames) {
-      return this.getElementsByClassName(classNames);
+    [dartx.getElementsByClassName](...args) {
+      return this.getElementsByClassName.apply(this, args);
     }
-    [_getElementsByTagName](localName) {
-      return this.getElementsByTagName(localName);
+    [_getElementsByTagName](...args) {
+      return this.getElementsByTagName.apply(this, args);
     }
-    [_hasAttribute](name) {
-      return this.hasAttribute(name);
+    [_hasAttribute](...args) {
+      return this.hasAttribute.apply(this, args);
     }
-    [_hasAttributeNS](namespaceURI, localName) {
-      return this.hasAttributeNS(namespaceURI, localName);
+    [_hasAttributeNS](...args) {
+      return this.hasAttributeNS.apply(this, args);
     }
-    [_removeAttribute](name) {
-      return this.removeAttribute(name);
+    [_removeAttribute](...args) {
+      return this.removeAttribute.apply(this, args);
     }
-    [_removeAttributeNS](namespaceURI, localName) {
-      return this.removeAttributeNS(namespaceURI, localName);
+    [_removeAttributeNS](...args) {
+      return this.removeAttributeNS.apply(this, args);
     }
-    [dartx.requestFullscreen]() {
-      return this.requestFullscreen();
+    [dartx.requestFullscreen](...args) {
+      return this.requestFullscreen.apply(this, args);
     }
-    [dartx.requestPointerLock]() {
-      return this.requestPointerLock();
+    [dartx.requestPointerLock](...args) {
+      return this.requestPointerLock.apply(this, args);
     }
     [dartx.scroll](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40893,14 +40893,14 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scroll_1]() {
-      return this.scroll();
+    [_scroll_1](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_2](options) {
-      return this.scroll(options);
+    [_scroll_2](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_3](x, y) {
-      return this.scroll(x, y);
+    [_scroll_3](...args) {
+      return this.scroll.apply(this, args);
     }
     [dartx.scrollBy](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40920,20 +40920,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollBy_1]() {
-      return this.scrollBy();
+    [_scrollBy_1](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_2](options) {
-      return this.scrollBy(options);
+    [_scrollBy_2](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_3](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_3](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollIntoView](alignWithTop) {
-      return this.scrollIntoView(alignWithTop);
+    [_scrollIntoView](...args) {
+      return this.scrollIntoView.apply(this, args);
     }
-    [_scrollIntoViewIfNeeded](centerIfNeeded) {
-      return this.scrollIntoViewIfNeeded(centerIfNeeded);
+    [_scrollIntoViewIfNeeded](...args) {
+      return this.scrollIntoViewIfNeeded.apply(this, args);
     }
     [dartx.scrollTo](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40953,26 +40953,26 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollTo_1]() {
-      return this.scrollTo();
+    [_scrollTo_1](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_2](options) {
-      return this.scrollTo(options);
+    [_scrollTo_2](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_3](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_3](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [dartx.setAttribute](name, value) {
-      return this.setAttribute(name, value);
+    [dartx.setAttribute](...args) {
+      return this.setAttribute.apply(this, args);
     }
-    [dartx.setAttributeNS](namespaceURI, name, value) {
-      return this.setAttributeNS(namespaceURI, name, value);
+    [dartx.setAttributeNS](...args) {
+      return this.setAttributeNS.apply(this, args);
     }
-    [dartx.after](nodes) {
-      return this.after(nodes);
+    [dartx.after](...args) {
+      return this.after.apply(this, args);
     }
-    [dartx.before](nodes) {
-      return this.before(nodes);
+    [dartx.before](...args) {
+      return this.before.apply(this, args);
     }
     get [dartx.nextElementSibling]() {
       return this.nextElementSibling;
@@ -40992,11 +40992,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.Element.abortEvent.forElement(this);
@@ -42052,20 +42052,20 @@
     set [dartx.startTime](value) {
       this.startTime = value;
     }
-    [dartx.cancel]() {
-      return this.cancel();
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.finish]() {
-      return this.finish();
+    [dartx.finish](...args) {
+      return this.finish.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.reverse]() {
-      return this.reverse();
+    [dartx.reverse](...args) {
+      return this.reverse.apply(this, args);
     }
   };
   dart.setSignature(html$.Animation, {
@@ -42316,11 +42316,11 @@
     set [dartx.playbackRate](value) {
       this.playbackRate = value;
     }
-    [dartx.getAnimations]() {
-      return this.getAnimations();
+    [dartx.getAnimations](...args) {
+      return this.getAnimations.apply(this, args);
     }
-    [dartx.play](source) {
-      return this.play(source);
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
   };
   dart.setSignature(html$.AnimationTimeline, {
@@ -42382,14 +42382,14 @@
     get [dartx.status]() {
       return this.status;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.swapCache]() {
-      return this.swapCache();
+    [dartx.swapCache](...args) {
+      return this.swapCache.apply(this, args);
     }
-    [dartx.update]() {
-      return this.update();
+    [dartx.update](...args) {
+      return this.update.apply(this, args);
     }
     get [dartx.onCached]() {
       return html$.ApplicationCache.cachedEvent.forTarget(this);
@@ -42936,35 +42936,35 @@
     get [dartx.videoDecodedByteCount]() {
       return this.webkitVideoDecodedByteCount;
     }
-    [dartx.addTextTrack](kind, label, language) {
-      return this.addTextTrack(kind, label, language);
+    [dartx.addTextTrack](...args) {
+      return this.addTextTrack.apply(this, args);
     }
-    [dartx.canPlayType](type, keySystem) {
-      return this.canPlayType(type, keySystem);
+    [dartx.canPlayType](...args) {
+      return this.canPlayType.apply(this, args);
     }
-    [dartx.load]() {
-      return this.load();
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.setMediaKeys](mediaKeys) {
-      return this.setMediaKeys(mediaKeys);
+    [dartx.setMediaKeys](...args) {
+      return this.setMediaKeys.apply(this, args);
     }
-    [dartx.setSinkId](sinkId) {
-      return this.setSinkId(sinkId);
+    [dartx.setSinkId](...args) {
+      return this.setSinkId.apply(this, args);
     }
-    [dartx.addKey](keySystem, key, initData, sessionId) {
-      return this.webkitAddKey(keySystem, key, initData, sessionId);
+    [dartx.addKey](...args) {
+      return this.webkitAddKey.apply(this, args);
     }
-    [dartx.cancelKeyRequest](keySystem, sessionId) {
-      return this.webkitCancelKeyRequest(keySystem, sessionId);
+    [dartx.cancelKeyRequest](...args) {
+      return this.webkitCancelKeyRequest.apply(this, args);
     }
-    [dartx.generateKeyRequest](keySystem, initData) {
-      return this.webkitGenerateKeyRequest(keySystem, initData);
+    [dartx.generateKeyRequest](...args) {
+      return this.webkitGenerateKeyRequest.apply(this, args);
     }
     get [dartx.onKeyAdded]() {
       return html$.MediaElement.keyAddedEvent.forElement(this);
@@ -43168,11 +43168,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.AudioTrackList.changeEvent.forTarget(this);
@@ -43372,8 +43372,8 @@
     get [dartx.userChoice]() {
       return this.userChoice;
     }
-    [dartx.prompt]() {
-      return this.prompt();
+    [dartx.prompt](...args) {
+      return this.prompt.apply(this, args);
     }
   };
   dart.setSignature(html$.BeforeInstallPromptEvent, {
@@ -43428,11 +43428,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.slice](start, end, contentType) {
-      return this.slice(start, end, contentType);
+    [dartx.slice](...args) {
+      return this.slice.apply(this, args);
     }
     static new(blobParts, type, endings) {
       if (type === void 0) type = null;
@@ -43492,8 +43492,8 @@
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_requestDevice_1](options_1);
     }
-    [_requestDevice_1](options) {
-      return this.requestDevice(options);
+    [_requestDevice_1](...args) {
+      return this.requestDevice.apply(this, args);
     }
   };
   dart.setSignature(html$.Bluetooth, {
@@ -43543,8 +43543,8 @@
     get [dartx.vendorIDSource]() {
       return this.vendorIDSource;
     }
-    [dartx.connectGatt]() {
-      return this.connectGATT();
+    [dartx.connectGatt](...args) {
+      return this.connectGATT.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothDevice, {
@@ -43574,11 +43574,11 @@
     get [dartx.uuid]() {
       return this.uuid;
     }
-    [dartx.readValue]() {
-      return this.readValue();
+    [dartx.readValue](...args) {
+      return this.readValue.apply(this, args);
     }
-    [dartx.writeValue](value) {
-      return this.writeValue(value);
+    [dartx.writeValue](...args) {
+      return this.writeValue.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattCharacteristic, {
@@ -43601,8 +43601,8 @@
     get [dartx.connected]() {
       return this.connected;
     }
-    [dartx.getPrimaryService](service) {
-      return this.getPrimaryService(service);
+    [dartx.getPrimaryService](...args) {
+      return this.getPrimaryService.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattRemoteServer, {
@@ -43626,8 +43626,8 @@
     get [dartx.uuid]() {
       return this.uuid;
     }
-    [dartx.getCharacteristic](characteristic) {
-      return this.getCharacteristic(characteristic);
+    [dartx.getCharacteristic](...args) {
+      return this.getCharacteristic.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattService, {
@@ -43669,17 +43669,17 @@
     get [dartx.bodyUsed]() {
       return this.bodyUsed;
     }
-    [dartx.arrayBuffer]() {
-      return this.arrayBuffer();
+    [dartx.arrayBuffer](...args) {
+      return this.arrayBuffer.apply(this, args);
     }
-    [dartx.blob]() {
-      return this.blob();
+    [dartx.blob](...args) {
+      return this.blob.apply(this, args);
     }
-    [dartx.json]() {
-      return this.json();
+    [dartx.json](...args) {
+      return this.json.apply(this, args);
     }
-    [dartx.text]() {
-      return this.text();
+    [dartx.text](...args) {
+      return this.text.apply(this, args);
     }
   };
   dart.setSignature(html$.Body, {
@@ -43953,14 +43953,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ButtonElement, 'created');
@@ -44021,26 +44021,26 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.appendData](data) {
-      return this.appendData(data);
+    [dartx.appendData](...args) {
+      return this.appendData.apply(this, args);
     }
-    [dartx.deleteData](offset, count) {
-      return this.deleteData(offset, count);
+    [dartx.deleteData](...args) {
+      return this.deleteData.apply(this, args);
     }
-    [dartx.insertData](offset, data) {
-      return this.insertData(offset, data);
+    [dartx.insertData](...args) {
+      return this.insertData.apply(this, args);
     }
-    [dartx.replaceData](offset, count, data) {
-      return this.replaceData(offset, count, data);
+    [dartx.replaceData](...args) {
+      return this.replaceData.apply(this, args);
     }
-    [dartx.substringData](offset, count) {
-      return this.substringData(offset, count);
+    [dartx.substringData](...args) {
+      return this.substringData.apply(this, args);
     }
-    [dartx.after](nodes) {
-      return this.after(nodes);
+    [dartx.after](...args) {
+      return this.after.apply(this, args);
     }
-    [dartx.before](nodes) {
-      return this.before(nodes);
+    [dartx.before](...args) {
+      return this.before.apply(this, args);
     }
     get [dartx.nextElementSibling]() {
       return this.nextElementSibling;
@@ -44084,11 +44084,11 @@
     get [dartx.wholeText]() {
       return this.wholeText;
     }
-    [dartx.getDestinationInsertionPoints]() {
-      return this.getDestinationInsertionPoints();
+    [dartx.getDestinationInsertionPoints](...args) {
+      return this.getDestinationInsertionPoints.apply(this, args);
     }
-    [dartx.splitText](offset) {
-      return this.splitText(offset);
+    [dartx.splitText](...args) {
+      return this.splitText.apply(this, args);
     }
   };
   dart.setSignature(html$.Text, {
@@ -44125,14 +44125,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.delete](cacheName) {
-      return this.delete(cacheName);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.has](cacheName) {
-      return this.has(cacheName);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
-    [dartx.keys]() {
-      return this.keys();
+    [dartx.keys](...args) {
+      return this.keys.apply(this, args);
     }
     [dartx.match](request, options) {
       if (options === void 0) options = null;
@@ -44142,14 +44142,14 @@
       }
       return this[_match_2](request);
     }
-    [_match_1](request, options) {
-      return this.match(request, options);
+    [_match_1](...args) {
+      return this.match.apply(this, args);
     }
-    [_match_2](request) {
-      return this.match(request);
+    [_match_2](...args) {
+      return this.match.apply(this, args);
     }
-    [dartx.open](cacheName) {
-      return this.open(cacheName);
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
   };
   dart.setSignature(html$.CacheStorage, {
@@ -44215,14 +44215,14 @@
       }
       return this[_getContext_2](contextId);
     }
-    [_getContext_1](contextId, attributes) {
-      return this.getContext(contextId, attributes);
+    [_getContext_1](...args) {
+      return this.getContext.apply(this, args);
     }
-    [_getContext_2](contextId) {
-      return this.getContext(contextId);
+    [_getContext_2](...args) {
+      return this.getContext.apply(this, args);
     }
-    [_toDataUrl](type, arguments_OR_quality) {
-      return this.toDataURL(type, arguments_OR_quality);
+    [_toDataUrl](...args) {
+      return this.toDataURL.apply(this, args);
     }
     get [dartx.onWebGlContextLost]() {
       return html$.CanvasElement.webGlContextLostEvent.forElement(this);
@@ -44299,8 +44299,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.addColorStop](offset, color) {
-      return this.addColorStop(offset, color);
+    [dartx.addColorStop](...args) {
+      return this.addColorStop.apply(this, args);
     }
   };
   dart.setSignature(html$.CanvasGradient, {
@@ -44315,8 +44315,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.setTransform](transform) {
-      return this.setTransform(transform);
+    [dartx.setTransform](...args) {
+      return this.setTransform.apply(this, args);
     }
   };
   dart.setSignature(html$.CanvasPattern, {
@@ -44545,23 +44545,23 @@
       this[_addHitRegion_2]();
       return;
     }
-    [_addHitRegion_1](options) {
-      return this.addHitRegion(options);
+    [_addHitRegion_1](...args) {
+      return this.addHitRegion.apply(this, args);
     }
-    [_addHitRegion_2]() {
-      return this.addHitRegion();
+    [_addHitRegion_2](...args) {
+      return this.addHitRegion.apply(this, args);
     }
-    [dartx.beginPath]() {
-      return this.beginPath();
+    [dartx.beginPath](...args) {
+      return this.beginPath.apply(this, args);
     }
-    [dartx.clearHitRegions]() {
-      return this.clearHitRegions();
+    [dartx.clearHitRegions](...args) {
+      return this.clearHitRegions.apply(this, args);
     }
-    [dartx.clearRect](x, y, width, height) {
-      return this.clearRect(x, y, width, height);
+    [dartx.clearRect](...args) {
+      return this.clearRect.apply(this, args);
     }
-    [dartx.clip](path_OR_winding, winding) {
-      return this.clip(path_OR_winding, winding);
+    [dartx.clip](...args) {
+      return this.clip.apply(this, args);
     }
     [dartx.createImageData](imagedata_OR_sw, sh) {
       if (sh === void 0) sh = null;
@@ -44574,53 +44574,53 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_createImageData_1](imagedata) {
-      return this.createImageData(imagedata);
+    [_createImageData_1](...args) {
+      return this.createImageData.apply(this, args);
     }
-    [_createImageData_2](sw, sh) {
-      return this.createImageData(sw, sh);
+    [_createImageData_2](...args) {
+      return this.createImageData.apply(this, args);
     }
-    [dartx.createLinearGradient](x0, y0, x1, y1) {
-      return this.createLinearGradient(x0, y0, x1, y1);
+    [dartx.createLinearGradient](...args) {
+      return this.createLinearGradient.apply(this, args);
     }
-    [dartx.createPattern](image, repetitionType) {
-      return this.createPattern(image, repetitionType);
+    [dartx.createPattern](...args) {
+      return this.createPattern.apply(this, args);
     }
-    [dartx.createRadialGradient](x0, y0, r0, x1, y1, r1) {
-      return this.createRadialGradient(x0, y0, r0, x1, y1, r1);
+    [dartx.createRadialGradient](...args) {
+      return this.createRadialGradient.apply(this, args);
     }
-    [dartx.drawFocusIfNeeded](element_OR_path, element) {
-      return this.drawFocusIfNeeded(element_OR_path, element);
+    [dartx.drawFocusIfNeeded](...args) {
+      return this.drawFocusIfNeeded.apply(this, args);
     }
-    [dartx.fillRect](x, y, width, height) {
-      return this.fillRect(x, y, width, height);
+    [dartx.fillRect](...args) {
+      return this.fillRect.apply(this, args);
     }
     [dartx.getContextAttributes]() {
       return html_common.convertNativeToDart_Dictionary(this[_getContextAttributes_1]());
     }
-    [_getContextAttributes_1]() {
-      return this.getContextAttributes();
+    [_getContextAttributes_1](...args) {
+      return this.getContextAttributes.apply(this, args);
     }
     [dartx.getImageData](sx, sy, sw, sh) {
       return html_common.convertNativeToDart_ImageData(this[_getImageData_1](sx, sy, sw, sh));
     }
-    [_getImageData_1](sx, sy, sw, sh) {
-      return this.getImageData(sx, sy, sw, sh);
+    [_getImageData_1](...args) {
+      return this.getImageData.apply(this, args);
     }
-    [_getLineDash]() {
-      return this.getLineDash();
+    [_getLineDash](...args) {
+      return this.getLineDash.apply(this, args);
     }
-    [dartx.isContextLost]() {
-      return this.isContextLost();
+    [dartx.isContextLost](...args) {
+      return this.isContextLost.apply(this, args);
     }
-    [dartx.isPointInPath](path_OR_x, x_OR_y, winding_OR_y, winding) {
-      return this.isPointInPath(path_OR_x, x_OR_y, winding_OR_y, winding);
+    [dartx.isPointInPath](...args) {
+      return this.isPointInPath.apply(this, args);
     }
-    [dartx.isPointInStroke](path_OR_x, x_OR_y, y) {
-      return this.isPointInStroke(path_OR_x, x_OR_y, y);
+    [dartx.isPointInStroke](...args) {
+      return this.isPointInStroke.apply(this, args);
     }
-    [dartx.measureText](text) {
-      return this.measureText(text);
+    [dartx.measureText](...args) {
+      return this.measureText.apply(this, args);
     }
     [dartx.putImageData](imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
       if (dirtyX === void 0) dirtyX = null;
@@ -44639,77 +44639,77 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_putImageData_1](imagedata, dx, dy) {
-      return this.putImageData(imagedata, dx, dy);
+    [_putImageData_1](...args) {
+      return this.putImageData.apply(this, args);
     }
-    [_putImageData_2](imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
-      return this.putImageData(imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight);
+    [_putImageData_2](...args) {
+      return this.putImageData.apply(this, args);
     }
-    [dartx.removeHitRegion](id) {
-      return this.removeHitRegion(id);
+    [dartx.removeHitRegion](...args) {
+      return this.removeHitRegion.apply(this, args);
     }
-    [dartx.resetTransform]() {
-      return this.resetTransform();
+    [dartx.resetTransform](...args) {
+      return this.resetTransform.apply(this, args);
     }
-    [dartx.restore]() {
-      return this.restore();
+    [dartx.restore](...args) {
+      return this.restore.apply(this, args);
     }
-    [dartx.rotate](angle) {
-      return this.rotate(angle);
+    [dartx.rotate](...args) {
+      return this.rotate.apply(this, args);
     }
-    [dartx.save]() {
-      return this.save();
+    [dartx.save](...args) {
+      return this.save.apply(this, args);
     }
-    [dartx.scale](x, y) {
-      return this.scale(x, y);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scrollPathIntoView](path) {
-      return this.scrollPathIntoView(path);
+    [dartx.scrollPathIntoView](...args) {
+      return this.scrollPathIntoView.apply(this, args);
     }
-    [dartx.setTransform](a, b, c, d, e, f) {
-      return this.setTransform(a, b, c, d, e, f);
+    [dartx.setTransform](...args) {
+      return this.setTransform.apply(this, args);
     }
-    [dartx.stroke](path) {
-      return this.stroke(path);
+    [dartx.stroke](...args) {
+      return this.stroke.apply(this, args);
     }
-    [dartx.strokeRect](x, y, width, height) {
-      return this.strokeRect(x, y, width, height);
+    [dartx.strokeRect](...args) {
+      return this.strokeRect.apply(this, args);
     }
-    [dartx.strokeText](text, x, y, maxWidth) {
-      return this.strokeText(text, x, y, maxWidth);
+    [dartx.strokeText](...args) {
+      return this.strokeText.apply(this, args);
     }
-    [dartx.transform](a, b, c, d, e, f) {
-      return this.transform(a, b, c, d, e, f);
+    [dartx.transform](...args) {
+      return this.transform.apply(this, args);
     }
-    [dartx.translate](x, y) {
-      return this.translate(x, y);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
-    [_arc](x, y, radius, startAngle, endAngle, anticlockwise) {
-      return this.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+    [_arc](...args) {
+      return this.arc.apply(this, args);
     }
-    [dartx.arcTo](x1, y1, x2, y2, radius) {
-      return this.arcTo(x1, y1, x2, y2, radius);
+    [dartx.arcTo](...args) {
+      return this.arcTo.apply(this, args);
     }
-    [dartx.bezierCurveTo](cp1x, cp1y, cp2x, cp2y, x, y) {
-      return this.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);
+    [dartx.bezierCurveTo](...args) {
+      return this.bezierCurveTo.apply(this, args);
     }
-    [dartx.closePath]() {
-      return this.closePath();
+    [dartx.closePath](...args) {
+      return this.closePath.apply(this, args);
     }
-    [dartx.ellipse](x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
-      return this.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);
+    [dartx.ellipse](...args) {
+      return this.ellipse.apply(this, args);
     }
-    [dartx.lineTo](x, y) {
-      return this.lineTo(x, y);
+    [dartx.lineTo](...args) {
+      return this.lineTo.apply(this, args);
     }
-    [dartx.moveTo](x, y) {
-      return this.moveTo(x, y);
+    [dartx.moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.quadraticCurveTo](cpx, cpy, x, y) {
-      return this.quadraticCurveTo(cpx, cpy, x, y);
+    [dartx.quadraticCurveTo](...args) {
+      return this.quadraticCurveTo.apply(this, args);
     }
-    [dartx.rect](x, y, width, height) {
-      return this.rect(x, y, width, height);
+    [dartx.rect](...args) {
+      return this.rect.apply(this, args);
     }
     [dartx.createImageDataFromImageData](imagedata) {
       return this.createImageData(imagedata);
@@ -44745,14 +44745,14 @@
         this[dartx.drawImageScaledFromSource](source, sourceRect[dartx.left], sourceRect[dartx.top], sourceRect[dartx.width], sourceRect[dartx.height], destRect[dartx.left], destRect[dartx.top], destRect[dartx.width], destRect[dartx.height]);
       }
     }
-    [dartx.drawImage](source, destX, destY) {
-      return this.drawImage(source, destX, destY);
+    [dartx.drawImage](...args) {
+      return this.drawImage.apply(this, args);
     }
-    [dartx.drawImageScaled](source, destX, destY, destWidth, destHeight) {
-      return this.drawImage(source, destX, destY, destWidth, destHeight);
+    [dartx.drawImageScaled](...args) {
+      return this.drawImage.apply(this, args);
     }
-    [dartx.drawImageScaledFromSource](source, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight) {
-      return this.drawImage(source, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight);
+    [dartx.drawImageScaledFromSource](...args) {
+      return this.drawImage.apply(this, args);
     }
     get [dartx.lineDashOffset]() {
       return this.lineDashOffset || this.webkitLineDashOffset;
@@ -44999,11 +44999,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.Client, {
@@ -45031,8 +45031,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.claim]() {
-      return this.claim();
+    [dartx.claim](...args) {
+      return this.claim.apply(this, args);
     }
     [dartx.matchAll](options) {
       if (options === void 0) options = null;
@@ -45042,14 +45042,14 @@
       }
       return this[_matchAll_2]();
     }
-    [_matchAll_1](options) {
-      return this.matchAll(options);
+    [_matchAll_1](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [_matchAll_2]() {
-      return this.matchAll();
+    [_matchAll_2](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [dartx.openWindow](url) {
-      return this.openWindow(url);
+    [dartx.openWindow](...args) {
+      return this.openWindow.apply(this, args);
     }
   };
   dart.setSignature(html$.Clients, {
@@ -45207,8 +45207,8 @@
     get [_which]() {
       return this.which;
     }
-    [_initUIEvent](type, bubbles, cancelable, view, detail) {
-      return this.initUIEvent(type, bubbles, cancelable, view, detail);
+    [_initUIEvent](...args) {
+      return this.initUIEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.UIEvent, {
@@ -45271,8 +45271,8 @@
     get [dartx.data]() {
       return this.data;
     }
-    [_initCompositionEvent](type, bubbles, cancelable, view, data) {
-      return this.initCompositionEvent(type, bubbles, cancelable, view, data);
+    [_initCompositionEvent](...args) {
+      return this.initCompositionEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.CompositionEvent, {
@@ -45331,11 +45331,11 @@
     set [dartx.transform](value) {
       this.transform = value;
     }
-    [dartx.disconnect]() {
-      return this.disconnect();
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
-    [dartx.supports](attribute) {
-      return this.supports(attribute);
+    [dartx.supports](...args) {
+      return this.supports.apply(this, args);
     }
   };
   dart.setSignature(html$.CompositorProxy, {
@@ -45384,14 +45384,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.terminate]() {
-      return this.terminate();
+    [dartx.terminate](...args) {
+      return this.terminate.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.CompositorWorker.errorEvent.forTarget(this);
@@ -45490,8 +45490,8 @@
     get [dartx.self]() {
       return this.self;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.fetch](input, init) {
       if (init === void 0) init = null;
@@ -45501,17 +45501,17 @@
       }
       return this[_fetch_2](input);
     }
-    [_fetch_1](input, init) {
-      return this.fetch(input, init);
+    [_fetch_1](...args) {
+      return this.fetch.apply(this, args);
     }
-    [_fetch_2](input) {
-      return this.fetch(input);
+    [_fetch_2](...args) {
+      return this.fetch.apply(this, args);
     }
-    [dartx.importScripts](urls) {
-      return this.importScripts(urls);
+    [dartx.importScripts](...args) {
+      return this.importScripts.apply(this, args);
     }
-    [_webkitRequestFileSystem](type, size, successCallback, errorCallback) {
-      return this.webkitRequestFileSystem(type, size, successCallback, errorCallback);
+    [_webkitRequestFileSystem](...args) {
+      return this.webkitRequestFileSystem.apply(this, args);
     }
     [dartx.webkitRequestFileSystem](type, size) {
       let completer = CompleterOfFileSystem().new();
@@ -45522,14 +45522,14 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.requestFileSystemSync](type, size) {
-      return this.webkitRequestFileSystemSync(type, size);
+    [dartx.requestFileSystemSync](...args) {
+      return this.webkitRequestFileSystemSync.apply(this, args);
     }
-    [dartx.resolveLocalFileSystemSyncUrl](url) {
-      return this.webkitResolveLocalFileSystemSyncURL(url);
+    [dartx.resolveLocalFileSystemSyncUrl](...args) {
+      return this.webkitResolveLocalFileSystemSyncURL.apply(this, args);
     }
-    [_webkitResolveLocalFileSystemUrl](url, successCallback, errorCallback) {
-      return this.webkitResolveLocalFileSystemURL(url, successCallback, errorCallback);
+    [_webkitResolveLocalFileSystemUrl](...args) {
+      return this.webkitResolveLocalFileSystemURL.apply(this, args);
     }
     [dartx.webkitResolveLocalFileSystemUrl](url) {
       let completer = CompleterOfEntry().new();
@@ -45540,29 +45540,29 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.atob](atob) {
-      return this.atob(atob);
+    [dartx.atob](...args) {
+      return this.atob.apply(this, args);
     }
-    [dartx.btoa](btoa) {
-      return this.btoa(btoa);
+    [dartx.btoa](...args) {
+      return this.btoa.apply(this, args);
     }
-    [_setInterval_String](handler, timeout, arguments$) {
-      return this.setInterval(handler, timeout, arguments$);
+    [_setInterval_String](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout_String](handler, timeout, arguments$) {
-      return this.setTimeout(handler, timeout, arguments$);
+    [_setTimeout_String](...args) {
+      return this.setTimeout.apply(this, args);
     }
-    [_clearInterval](handle) {
-      return this.clearInterval(handle);
+    [_clearInterval](...args) {
+      return this.clearInterval.apply(this, args);
     }
-    [_clearTimeout](handle) {
-      return this.clearTimeout(handle);
+    [_clearTimeout](...args) {
+      return this.clearTimeout.apply(this, args);
     }
-    [_setInterval](handler, timeout) {
-      return this.setInterval(handler, timeout);
+    [_setInterval](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout](handler, timeout) {
-      return this.setTimeout(handler, timeout);
+    [_setTimeout](...args) {
+      return this.setTimeout.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.WorkerGlobalScope.errorEvent.forTarget(this);
@@ -45627,8 +45627,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancelAnimationFrame](handle) {
-      return this.cancelAnimationFrame(handle);
+    [dartx.cancelAnimationFrame](...args) {
+      return this.cancelAnimationFrame.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -45641,14 +45641,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.requestAnimationFrame](callback) {
-      return this.requestAnimationFrame(callback);
+    [dartx.requestAnimationFrame](...args) {
+      return this.requestAnimationFrame.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.CompositorWorkerGlobalScope.messageEvent.forTarget(this);
@@ -45798,14 +45798,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.assertCondition](condition, arg) {
-      return this.assert(condition, arg);
+    [dartx.assertCondition](...args) {
+      return this.assert.apply(this, args);
     }
-    [dartx.timeline](title) {
-      return this.timeline(title);
+    [dartx.timeline](...args) {
+      return this.timeline.apply(this, args);
     }
-    [dartx.timelineEnd](title) {
-      return this.timelineEnd(title);
+    [dartx.timelineEnd](...args) {
+      return this.timelineEnd.apply(this, args);
     }
   };
   dart.setSignature(html$.ConsoleBase, {
@@ -45841,8 +45841,8 @@
     set [dartx.select](value) {
       this.select = value;
     }
-    [dartx.getDistributedNodes]() {
-      return this.getDistributedNodes();
+    [dartx.getDistributedNodes](...args) {
+      return this.getDistributedNodes.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ContentElement, 'created');
@@ -45949,8 +45949,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.notifySignedIn](credential) {
-      return this.notifySignedIn(credential);
+    [dartx.notifySignedIn](...args) {
+      return this.notifySignedIn.apply(this, args);
     }
     [dartx.request](options) {
       if (options === void 0) options = null;
@@ -45960,14 +45960,14 @@
       }
       return this[_request_2]();
     }
-    [_request_1](options) {
-      return this.request(options);
+    [_request_1](...args) {
+      return this.request.apply(this, args);
     }
-    [_request_2]() {
-      return this.request();
+    [_request_2](...args) {
+      return this.request.apply(this, args);
     }
-    [dartx.requireUserMediation]() {
-      return this.requireUserMediation();
+    [dartx.requireUserMediation](...args) {
+      return this.requireUserMediation.apply(this, args);
     }
   };
   dart.setSignature(html$.CredentialsContainer, {
@@ -45992,8 +45992,8 @@
     get [dartx.client]() {
       return this.client;
     }
-    [dartx.acceptConnection](shouldAccept) {
-      return this.acceptConnection(shouldAccept);
+    [dartx.acceptConnection](...args) {
+      return this.acceptConnection.apply(this, args);
     }
   };
   dart.setSignature(html$.CrossOriginConnectEvent, {
@@ -46028,11 +46028,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.CrossOriginServiceWorkerClient, {
@@ -46066,8 +46066,8 @@
     get [dartx.subtle]() {
       return this.subtle;
     }
-    [_getRandomValues](array) {
-      return this.getRandomValues(array);
+    [_getRandomValues](...args) {
+      return this.getRandomValues.apply(this, args);
     }
   };
   dart.setSignature(html$.Crypto, {
@@ -46236,11 +46236,11 @@
     get [dartx.cssRules]() {
       return this.cssRules;
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssGroupingRule, {
@@ -46328,17 +46328,17 @@
     set [dartx.name](value) {
       this.name = value;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.appendRule](rule) {
-      return this.appendRule(rule);
+    [dartx.appendRule](...args) {
+      return this.appendRule.apply(this, args);
     }
-    [dartx.deleteRule](select) {
-      return this.deleteRule(select);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.findRule](select) {
-      return this.findRule(select);
+    [dartx.findRule](...args) {
+      return this.findRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssKeyframesRule, {
@@ -50876,17 +50876,17 @@
     get [dartx.parentRule]() {
       return this.parentRule;
     }
-    [dartx.getPropertyPriority](property) {
-      return this.getPropertyPriority(property);
+    [dartx.getPropertyPriority](...args) {
+      return this.getPropertyPriority.apply(this, args);
     }
-    [_getPropertyValue](property) {
-      return this.getPropertyValue(property);
+    [_getPropertyValue](...args) {
+      return this.getPropertyValue.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.removeProperty](property) {
-      return this.removeProperty(property);
+    [dartx.removeProperty](...args) {
+      return this.removeProperty.apply(this, args);
     }
     get [dartx.background]() {
       return this[_background];
@@ -52868,17 +52868,17 @@
     get [dartx.rules]() {
       return this.rules;
     }
-    [dartx.addRule](selector, style, index) {
-      return this.addRule(selector, style, index);
+    [dartx.addRule](...args) {
+      return this.addRule.apply(this, args);
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
-    [dartx.removeRule](index) {
-      return this.removeRule(index);
+    [dartx.removeRule](...args) {
+      return this.removeRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssStyleSheet, {
@@ -52912,11 +52912,11 @@
     get [dartx.cssRules]() {
       return this.cssRules;
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssSupportsRule, {
@@ -53006,8 +53006,8 @@
     get [_get__detail]() {
       return this.detail;
     }
-    [_initCustomEvent](type, bubbles, cancelable, detail) {
-      return this.initCustomEvent(type, bubbles, cancelable, detail);
+    [_initCustomEvent](...args) {
+      return this.initCustomEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.CustomEvent, {
@@ -53119,17 +53119,17 @@
     get [dartx.types]() {
       return this.types;
     }
-    [dartx.clearData](format) {
-      return this.clearData(format);
+    [dartx.clearData](...args) {
+      return this.clearData.apply(this, args);
     }
-    [dartx.getData](format) {
-      return this.getData(format);
+    [dartx.getData](...args) {
+      return this.getData.apply(this, args);
     }
-    [dartx.setData](format, data) {
-      return this.setData(format, data);
+    [dartx.setData](...args) {
+      return this.setData.apply(this, args);
     }
-    [dartx.setDragImage](image, x, y) {
-      return this.setDragImage(image, x, y);
+    [dartx.setDragImage](...args) {
+      return this.setDragImage.apply(this, args);
     }
   };
   dart.setSignature(html$.DataTransfer, {
@@ -53167,11 +53167,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.getAsFile]() {
-      return this.getAsFile();
+    [dartx.getAsFile](...args) {
+      return this.getAsFile.apply(this, args);
     }
-    [_getAsString](callback) {
-      return this.getAsString(callback);
+    [_getAsString](...args) {
+      return this.getAsString.apply(this, args);
     }
     [dartx.getAsString]() {
       let completer = CompleterOfString().new();
@@ -53180,8 +53180,8 @@
       }, StringTovoid$()));
       return completer.future;
     }
-    [dartx.getAsEntry]() {
-      return this.webkitGetAsEntry();
+    [dartx.getAsEntry](...args) {
+      return this.webkitGetAsEntry.apply(this, args);
     }
   };
   dart.setSignature(html$.DataTransferItem, {
@@ -53215,23 +53215,23 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.add](data_OR_file, type) {
-      return this.add(data_OR_file, type);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.addData](data, type) {
-      return this.add(data, type);
+    [dartx.addData](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.addFile](file) {
-      return this.add(file);
+    [dartx.addFile](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.remove](index) {
-      return this.remove(index);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
     [dartx._get](index) {
       return this[index];
@@ -53271,11 +53271,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.DedicatedWorkerGlobalScope.messageEvent.forTarget(this);
@@ -53343,11 +53343,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.queryUsageAndQuota](storageType, usageCallback, errorCallback) {
-      return this.queryUsageAndQuota(storageType, usageCallback, errorCallback);
+    [dartx.queryUsageAndQuota](...args) {
+      return this.queryUsageAndQuota.apply(this, args);
     }
-    [dartx.requestQuota](storageType, newQuotaInBytes, quotaCallback, errorCallback) {
-      return this.requestQuota(storageType, newQuotaInBytes, quotaCallback, errorCallback);
+    [dartx.requestQuota](...args) {
+      return this.requestQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.DeprecatedStorageInfo, {
@@ -53372,11 +53372,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.queryUsageAndQuota](usageCallback, errorCallback) {
-      return this.queryUsageAndQuota(usageCallback, errorCallback);
+    [dartx.queryUsageAndQuota](...args) {
+      return this.queryUsageAndQuota.apply(this, args);
     }
-    [dartx.requestQuota](newQuotaInBytes, quotaCallback, errorCallback) {
-      return this.requestQuota(newQuotaInBytes, quotaCallback, errorCallback);
+    [dartx.requestQuota](...args) {
+      return this.requestQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.DeprecatedStorageQuota, {
@@ -53511,8 +53511,8 @@
     get [dartx.rotationRate]() {
       return this.rotationRate;
     }
-    [dartx.initDeviceMotionEvent](type, bubbles, cancelable, acceleration, accelerationIncludingGravity, rotationRate, interval) {
-      return this.initDeviceMotionEvent(type, bubbles, cancelable, acceleration, accelerationIncludingGravity, rotationRate, interval);
+    [dartx.initDeviceMotionEvent](...args) {
+      return this.initDeviceMotionEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.DeviceMotionEvent, {
@@ -53560,8 +53560,8 @@
     get [dartx.gamma]() {
       return this.gamma;
     }
-    [_initDeviceOrientationEvent](type, bubbles, cancelable, alpha, beta, gamma, absolute) {
-      return this.initDeviceOrientationEvent(type, bubbles, cancelable, alpha, beta, gamma, absolute);
+    [_initDeviceOrientationEvent](...args) {
+      return this.initDeviceOrientationEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.DeviceOrientationEvent, {
@@ -53634,14 +53634,14 @@
     set [dartx.returnValue](value) {
       this.returnValue = value;
     }
-    [dartx.close](returnValue) {
-      return this.close(returnValue);
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.show]() {
-      return this.show();
+    [dartx.show](...args) {
+      return this.show.apply(this, args);
     }
-    [dartx.showModal]() {
-      return this.showModal();
+    [dartx.showModal](...args) {
+      return this.showModal.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.DialogElement, 'created');
@@ -53711,8 +53711,8 @@
     get [dartx.name]() {
       return this.name;
     }
-    [_copyTo](parent, opts) {
-      return this.copyTo(parent, opts);
+    [_copyTo](...args) {
+      return this.copyTo.apply(this, args);
     }
     [dartx.copyTo](parent, opts) {
       let name = opts && 'name' in opts ? opts.name : null;
@@ -53724,8 +53724,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_getMetadata](successCallback, errorCallback) {
-      return this.getMetadata(successCallback, errorCallback);
+    [_getMetadata](...args) {
+      return this.getMetadata.apply(this, args);
     }
     [dartx.getMetadata]() {
       let completer = CompleterOfMetadata().new();
@@ -53736,8 +53736,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_getParent](successCallback, errorCallback) {
-      return this.getParent(successCallback, errorCallback);
+    [_getParent](...args) {
+      return this.getParent.apply(this, args);
     }
     [dartx.getParent]() {
       let completer = CompleterOfEntry().new();
@@ -53748,8 +53748,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_moveTo](parent, opts) {
-      return this.moveTo(parent, opts);
+    [_moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
     [dartx.moveTo](parent, opts) {
       let name = opts && 'name' in opts ? opts.name : null;
@@ -53761,8 +53761,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_remove$](successCallback, errorCallback) {
-      return this.remove(successCallback, errorCallback);
+    [_remove$](...args) {
+      return this.remove.apply(this, args);
     }
     [dartx.remove]() {
       let completer = async.Completer.new();
@@ -53773,8 +53773,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.toUrl]() {
-      return this.toURL();
+    [dartx.toUrl](...args) {
+      return this.toURL.apply(this, args);
     }
   };
   dart.setSignature(html$.Entry, {
@@ -53827,8 +53827,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.createReader]() {
-      return this.createReader();
+    [dartx.createReader](...args) {
+      return this.createReader.apply(this, args);
     }
     [__getDirectory](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53852,17 +53852,17 @@
       this[__getDirectory_4](path);
       return;
     }
-    [__getDirectory_1](path, options, successCallback, errorCallback) {
-      return this.getDirectory(path, options, successCallback, errorCallback);
+    [__getDirectory_1](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_2](path, options, successCallback) {
-      return this.getDirectory(path, options, successCallback);
+    [__getDirectory_2](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_3](path, options) {
-      return this.getDirectory(path, options);
+    [__getDirectory_3](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_4](path) {
-      return this.getDirectory(path);
+    [__getDirectory_4](...args) {
+      return this.getDirectory.apply(this, args);
     }
     [_getDirectory](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53896,17 +53896,17 @@
       this[__getFile_4](path);
       return;
     }
-    [__getFile_1](path, options, successCallback, errorCallback) {
-      return this.getFile(path, options, successCallback, errorCallback);
+    [__getFile_1](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_2](path, options, successCallback) {
-      return this.getFile(path, options, successCallback);
+    [__getFile_2](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_3](path, options) {
-      return this.getFile(path, options);
+    [__getFile_3](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_4](path) {
-      return this.getFile(path);
+    [__getFile_4](...args) {
+      return this.getFile.apply(this, args);
     }
     [_getFile](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53918,8 +53918,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_removeRecursively](successCallback, errorCallback) {
-      return this.removeRecursively(successCallback, errorCallback);
+    [_removeRecursively](...args) {
+      return this.removeRecursively.apply(this, args);
     }
     [dartx.removeRecursively]() {
       let completer = async.Completer.new();
@@ -53964,8 +53964,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_readEntries](successCallback, errorCallback) {
-      return this.readEntries(successCallback, errorCallback);
+    [_readEntries](...args) {
+      return this.readEntries.apply(this, args);
     }
     [dartx.readEntries]() {
       let completer = CompleterOfListOfEntry().new();
@@ -54262,93 +54262,93 @@
     get [_webkitVisibilityState]() {
       return this.webkitVisibilityState;
     }
-    [dartx.adoptNode](node) {
-      return this.adoptNode(node);
+    [dartx.adoptNode](...args) {
+      return this.adoptNode.apply(this, args);
     }
-    [_caretRangeFromPoint](x, y) {
-      return this.caretRangeFromPoint(x, y);
+    [_caretRangeFromPoint](...args) {
+      return this.caretRangeFromPoint.apply(this, args);
     }
-    [dartx.createDocumentFragment]() {
-      return this.createDocumentFragment();
+    [dartx.createDocumentFragment](...args) {
+      return this.createDocumentFragment.apply(this, args);
     }
-    [_createElement](localName_OR_tagName, typeExtension) {
-      return this.createElement(localName_OR_tagName, typeExtension);
+    [_createElement](...args) {
+      return this.createElement.apply(this, args);
     }
-    [_createElementNS](namespaceURI, qualifiedName, typeExtension) {
-      return this.createElementNS(namespaceURI, qualifiedName, typeExtension);
+    [_createElementNS](...args) {
+      return this.createElementNS.apply(this, args);
     }
-    [_createEvent](eventType) {
-      return this.createEvent(eventType);
+    [_createEvent](...args) {
+      return this.createEvent.apply(this, args);
     }
-    [dartx.createRange]() {
-      return this.createRange();
+    [dartx.createRange](...args) {
+      return this.createRange.apply(this, args);
     }
-    [_createTextNode](data) {
-      return this.createTextNode(data);
+    [_createTextNode](...args) {
+      return this.createTextNode.apply(this, args);
     }
     [_createTouch](window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force) {
       let target_1 = html$._convertDartToNative_EventTarget(target);
       return this[_createTouch_1](window, target_1, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force);
     }
-    [_createTouch_1](window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force) {
-      return this.createTouch(window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force);
+    [_createTouch_1](...args) {
+      return this.createTouch.apply(this, args);
     }
-    [_createTouchList](touches) {
-      return this.createTouchList(touches);
+    [_createTouchList](...args) {
+      return this.createTouchList.apply(this, args);
     }
-    [_elementFromPoint](x, y) {
-      return this.elementFromPoint(x, y);
+    [_elementFromPoint](...args) {
+      return this.elementFromPoint.apply(this, args);
     }
-    [dartx.elementsFromPoint](x, y) {
-      return this.elementsFromPoint(x, y);
+    [dartx.elementsFromPoint](...args) {
+      return this.elementsFromPoint.apply(this, args);
     }
-    [dartx.execCommand](commandId, showUI, value) {
-      return this.execCommand(commandId, showUI, value);
+    [dartx.execCommand](...args) {
+      return this.execCommand.apply(this, args);
     }
-    [dartx.exitFullscreen]() {
-      return this.exitFullscreen();
+    [dartx.exitFullscreen](...args) {
+      return this.exitFullscreen.apply(this, args);
     }
-    [dartx.exitPointerLock]() {
-      return this.exitPointerLock();
+    [dartx.exitPointerLock](...args) {
+      return this.exitPointerLock.apply(this, args);
     }
-    [_getCssCanvasContext](contextId, name, width, height) {
-      return this.getCSSCanvasContext(contextId, name, width, height);
+    [_getCssCanvasContext](...args) {
+      return this.getCSSCanvasContext.apply(this, args);
     }
-    [dartx.getElementsByClassName](classNames) {
-      return this.getElementsByClassName(classNames);
+    [dartx.getElementsByClassName](...args) {
+      return this.getElementsByClassName.apply(this, args);
     }
-    [dartx.getElementsByName](elementName) {
-      return this.getElementsByName(elementName);
+    [dartx.getElementsByName](...args) {
+      return this.getElementsByName.apply(this, args);
     }
-    [dartx.getElementsByTagName](localName) {
-      return this.getElementsByTagName(localName);
+    [dartx.getElementsByTagName](...args) {
+      return this.getElementsByTagName.apply(this, args);
     }
-    [dartx.importNode](node, deep) {
-      return this.importNode(node, deep);
+    [dartx.importNode](...args) {
+      return this.importNode.apply(this, args);
     }
-    [dartx.queryCommandEnabled](commandId) {
-      return this.queryCommandEnabled(commandId);
+    [dartx.queryCommandEnabled](...args) {
+      return this.queryCommandEnabled.apply(this, args);
     }
-    [dartx.queryCommandIndeterm](commandId) {
-      return this.queryCommandIndeterm(commandId);
+    [dartx.queryCommandIndeterm](...args) {
+      return this.queryCommandIndeterm.apply(this, args);
     }
-    [dartx.queryCommandState](commandId) {
-      return this.queryCommandState(commandId);
+    [dartx.queryCommandState](...args) {
+      return this.queryCommandState.apply(this, args);
     }
-    [dartx.queryCommandSupported](commandId) {
-      return this.queryCommandSupported(commandId);
+    [dartx.queryCommandSupported](...args) {
+      return this.queryCommandSupported.apply(this, args);
     }
-    [dartx.queryCommandValue](commandId) {
-      return this.queryCommandValue(commandId);
+    [dartx.queryCommandValue](...args) {
+      return this.queryCommandValue.apply(this, args);
     }
-    [dartx.transformDocumentToTreeView](noStyleMessage) {
-      return this.transformDocumentToTreeView(noStyleMessage);
+    [dartx.transformDocumentToTreeView](...args) {
+      return this.transformDocumentToTreeView.apply(this, args);
     }
-    [_webkitExitFullscreen]() {
-      return this.webkitExitFullscreen();
+    [_webkitExitFullscreen](...args) {
+      return this.webkitExitFullscreen.apply(this, args);
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
     get [_childElementCount]() {
       return this.childElementCount;
@@ -54362,11 +54362,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.Element.abortEvent.forTarget(this);
@@ -54901,8 +54901,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
     get [_childElementCount]() {
       return this.childElementCount;
@@ -54913,11 +54913,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
   };
   html$.DocumentFragment[dart.implements] = () => [html$.NonElementParentNode, html$.ParentNode];
@@ -55082,17 +55082,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.createDocument](namespaceURI, qualifiedName, doctype) {
-      return this.createDocument(namespaceURI, qualifiedName, doctype);
+    [dartx.createDocument](...args) {
+      return this.createDocument.apply(this, args);
     }
-    [dartx.createDocumentType](qualifiedName, publicId, systemId) {
-      return this.createDocumentType(qualifiedName, publicId, systemId);
+    [dartx.createDocumentType](...args) {
+      return this.createDocumentType.apply(this, args);
     }
-    [dartx.createHtmlDocument](title) {
-      return this.createHTMLDocument(title);
+    [dartx.createHtmlDocument](...args) {
+      return this.createHTMLDocument.apply(this, args);
     }
-    [dartx.hasFeature]() {
-      return this.hasFeature();
+    [dartx.hasFeature](...args) {
+      return this.hasFeature.apply(this, args);
     }
   };
   dart.setSignature(html$.DomImplementation, {
@@ -55112,8 +55112,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.next](value) {
-      return this.next(value);
+    [dartx.next](...args) {
+      return this.next.apply(this, args);
     }
   };
   dart.setSignature(html$.DomIterator, {
@@ -55230,26 +55230,26 @@
     get [dartx.m44]() {
       return this.m44;
     }
-    [dartx.multiply](other) {
-      return this.multiply(other);
+    [dartx.multiply](...args) {
+      return this.multiply.apply(this, args);
     }
-    [dartx.scale](scale, originX, originY) {
-      return this.scale(scale, originX, originY);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scale3d](scale, originX, originY, originZ) {
-      return this.scale3d(scale, originX, originY, originZ);
+    [dartx.scale3d](...args) {
+      return this.scale3d.apply(this, args);
     }
-    [dartx.scaleNonUniform](scaleX, scaleY, scaleZn, originX, originY, originZ) {
-      return this.scaleNonUniform(scaleX, scaleY, scaleZn, originX, originY, originZ);
+    [dartx.scaleNonUniform](...args) {
+      return this.scaleNonUniform.apply(this, args);
     }
-    [dartx.toFloat32Array]() {
-      return this.toFloat32Array();
+    [dartx.toFloat32Array](...args) {
+      return this.toFloat32Array.apply(this, args);
     }
-    [dartx.toFloat64Array]() {
-      return this.toFloat64Array();
+    [dartx.toFloat64Array](...args) {
+      return this.toFloat64Array.apply(this, args);
     }
-    [dartx.translate](tx, ty, tz) {
-      return this.translate(tx, ty, tz);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
   };
   dart.setSignature(html$.DomMatrixReadOnly, {
@@ -55495,23 +55495,23 @@
     set [dartx.m44](value) {
       this.m44 = value;
     }
-    [dartx.multiplySelf](other) {
-      return this.multiplySelf(other);
+    [dartx.multiplySelf](...args) {
+      return this.multiplySelf.apply(this, args);
     }
-    [dartx.preMultiplySelf](other) {
-      return this.preMultiplySelf(other);
+    [dartx.preMultiplySelf](...args) {
+      return this.preMultiplySelf.apply(this, args);
     }
-    [dartx.scale3dSelf](scale, originX, originY, originZ) {
-      return this.scale3dSelf(scale, originX, originY, originZ);
+    [dartx.scale3dSelf](...args) {
+      return this.scale3dSelf.apply(this, args);
     }
-    [dartx.scaleNonUniformSelf](scaleX, scaleY, scaleZ, originX, originY, originZ) {
-      return this.scaleNonUniformSelf(scaleX, scaleY, scaleZ, originX, originY, originZ);
+    [dartx.scaleNonUniformSelf](...args) {
+      return this.scaleNonUniformSelf.apply(this, args);
     }
-    [dartx.scaleSelf](scale, originX, originY) {
-      return this.scaleSelf(scale, originX, originY);
+    [dartx.scaleSelf](...args) {
+      return this.scaleSelf.apply(this, args);
     }
-    [dartx.translateSelf](tx, ty, tz) {
-      return this.translateSelf(tx, ty, tz);
+    [dartx.translateSelf](...args) {
+      return this.translateSelf.apply(this, args);
     }
   };
   dart.setSignature(html$.DomMatrix, {
@@ -55571,8 +55571,8 @@
     static _create_1() {
       return new DOMParser();
     }
-    [dartx.parseFromString](str, type) {
-      return this.parseFromString(str, type);
+    [dartx.parseFromString](...args) {
+      return this.parseFromString.apply(this, args);
     }
   };
   dart.setSignature(html$.DomParser, {
@@ -55891,20 +55891,20 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.add](tokens) {
-      return this.add(tokens);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.contains](token) {
-      return this.contains(token);
+    [dartx.contains](...args) {
+      return this.contains.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.remove](tokens) {
-      return this.remove(tokens);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
-    [dartx.toggle](token, force) {
-      return this.toggle(token, force);
+    [dartx.toggle](...args) {
+      return this.toggle.apply(this, args);
     }
   };
   dart.setSignature(html$.DomTokenList, {
@@ -56129,11 +56129,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.DomStringList[dart.implements] = () => [ListOfString()];
@@ -56857,11 +56857,11 @@
     set [dartx.width](value) {
       this.width = value;
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.EmbedElement, 'created');
@@ -56989,8 +56989,8 @@
     get [dartx.withCredentials]() {
       return this.withCredentials;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.EventSource.errorEvent.forTarget(this);
@@ -57105,8 +57105,8 @@
     static _create_2(type) {
       return new ExtendableEvent(type);
     }
-    [dartx.waitUntil](value) {
-      return this.waitUntil(value);
+    [dartx.waitUntil](...args) {
+      return this.waitUntil.apply(this, args);
     }
   };
   dart.setSignature(html$.ExtendableEvent, {
@@ -57186,8 +57186,8 @@
     get [dartx.request]() {
       return this.request;
     }
-    [dartx.respondWith](value) {
-      return this.respondWith(value);
+    [dartx.respondWith](...args) {
+      return this.respondWith.apply(this, args);
     }
   };
   dart.setSignature(html$.FetchEvent, {
@@ -57268,14 +57268,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.FieldSetElement, 'created');
@@ -57373,8 +57373,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_createWriter](successCallback, errorCallback) {
-      return this.createWriter(successCallback, errorCallback);
+    [_createWriter](...args) {
+      return this.createWriter.apply(this, args);
     }
     [dartx.createWriter]() {
       let completer = CompleterOfFileWriter().new();
@@ -57385,8 +57385,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_file](successCallback, errorCallback) {
-      return this.file(successCallback, errorCallback);
+    [_file](...args) {
+      return this.file.apply(this, args);
     }
     [dartx.file]() {
       let completer = CompleterOfFile().new();
@@ -57503,8 +57503,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.FileList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfFile()];
@@ -57563,17 +57563,17 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.readAsArrayBuffer](blob) {
-      return this.readAsArrayBuffer(blob);
+    [dartx.readAsArrayBuffer](...args) {
+      return this.readAsArrayBuffer.apply(this, args);
     }
-    [dartx.readAsDataUrl](blob) {
-      return this.readAsDataURL(blob);
+    [dartx.readAsDataUrl](...args) {
+      return this.readAsDataURL.apply(this, args);
     }
-    [dartx.readAsText](blob, label) {
-      return this.readAsText(blob, label);
+    [dartx.readAsText](...args) {
+      return this.readAsText.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.FileReader.abortEvent.forTarget(this);
@@ -57732,17 +57732,17 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.seek](position) {
-      return this.seek(position);
+    [dartx.seek](...args) {
+      return this.seek.apply(this, args);
     }
-    [dartx.truncate](size) {
-      return this.truncate(size);
+    [dartx.truncate](...args) {
+      return this.truncate.apply(this, args);
     }
-    [dartx.write](data) {
-      return this.write(data);
+    [dartx.write](...args) {
+      return this.write.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.FileWriter.abortEvent.forTarget(this);
@@ -57943,8 +57943,8 @@
     set [dartx.weight](value) {
       this.weight = value;
     }
-    [dartx.load]() {
-      return this.load();
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
   };
   dart.setSignature(html$.FontFace, {
@@ -57991,23 +57991,23 @@
     get [dartx.status]() {
       return this.status;
     }
-    [dartx.add](fontFace) {
-      return this.add(fontFace);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.check](font, text) {
-      return this.check(font, text);
+    [dartx.check](...args) {
+      return this.check.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.delete](fontFace) {
-      return this.delete(fontFace);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.forEach](callback, thisArg) {
-      return this.forEach(callback, thisArg);
+    [dartx.forEach](...args) {
+      return this.forEach.apply(this, args);
     }
-    [dartx.has](fontFace) {
-      return this.has(fontFace);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
   };
   dart.setSignature(html$.FontFaceSet, {
@@ -58072,26 +58072,26 @@
     static get supported() {
       return !!window.FormData;
     }
-    [dartx.append](name, value) {
-      return this.append(name, value);
+    [dartx.append](...args) {
+      return this.append.apply(this, args);
     }
-    [dartx.appendBlob](name, value, filename) {
-      return this.append(name, value, filename);
+    [dartx.appendBlob](...args) {
+      return this.append.apply(this, args);
     }
-    [dartx.delete](name) {
-      return this.delete(name);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.get](name) {
-      return this.get(name);
+    [dartx.get](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](name) {
-      return this.getAll(name);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.has](name) {
-      return this.has(name);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
-    [dartx.set](name, value, filename) {
-      return this.set(name, value, filename);
+    [dartx.set](...args) {
+      return this.set.apply(this, args);
     }
   };
   dart.setSignature(html$.FormData, {
@@ -58212,31 +58212,31 @@
     set [dartx.target](value) {
       this.target = value;
     }
-    [__getter__](name) {
-      return this.__getter__(name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
     [dartx.requestAutocomplete](details) {
       let details_1 = html_common.convertDartToNative_Dictionary(details);
       this[_requestAutocomplete_1](details_1);
       return;
     }
-    [_requestAutocomplete_1](details) {
-      return this.requestAutocomplete(details);
+    [_requestAutocomplete_1](...args) {
+      return this.requestAutocomplete.apply(this, args);
     }
-    [dartx.reset]() {
-      return this.reset();
+    [dartx.reset](...args) {
+      return this.reset.apply(this, args);
     }
-    [dartx.submit]() {
-      return this.submit();
+    [dartx.submit](...args) {
+      return this.submit.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.FormElement, 'created');
@@ -58389,14 +58389,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getRegisteredRegions]() {
-      return this.getRegisteredRegions();
+    [dartx.getRegisteredRegions](...args) {
+      return this.getRegisteredRegions.apply(this, args);
     }
-    [dartx.registerRegion](region) {
-      return this.registerRegion(region);
+    [dartx.registerRegion](...args) {
+      return this.registerRegion.apply(this, args);
     }
-    [dartx.unregisterRegion](regionId) {
-      return this.unregisterRegion(regionId);
+    [dartx.unregisterRegion](...args) {
+      return this.unregisterRegion.apply(this, args);
     }
   };
   dart.setSignature(html$.Geofencing, {
@@ -58516,8 +58516,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_clearWatch](watchID) {
-      return this.clearWatch(watchID);
+    [_clearWatch](...args) {
+      return this.clearWatch.apply(this, args);
     }
     [_getCurrentPosition](successCallback, errorCallback, options) {
       if (errorCallback === void 0) errorCallback = null;
@@ -58534,14 +58534,14 @@
       this[_getCurrentPosition_3](successCallback);
       return;
     }
-    [_getCurrentPosition_1](successCallback, errorCallback, options) {
-      return this.getCurrentPosition(successCallback, errorCallback, options);
+    [_getCurrentPosition_1](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
-    [_getCurrentPosition_2](successCallback, errorCallback) {
-      return this.getCurrentPosition(successCallback, errorCallback);
+    [_getCurrentPosition_2](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
-    [_getCurrentPosition_3](successCallback) {
-      return this.getCurrentPosition(successCallback);
+    [_getCurrentPosition_3](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
     [_watchPosition](successCallback, errorCallback, options) {
       if (errorCallback === void 0) errorCallback = null;
@@ -58555,14 +58555,14 @@
       }
       return this[_watchPosition_3](successCallback);
     }
-    [_watchPosition_1](successCallback, errorCallback, options) {
-      return this.watchPosition(successCallback, errorCallback, options);
+    [_watchPosition_1](...args) {
+      return this.watchPosition.apply(this, args);
     }
-    [_watchPosition_2](successCallback, errorCallback) {
-      return this.watchPosition(successCallback, errorCallback);
+    [_watchPosition_2](...args) {
+      return this.watchPosition.apply(this, args);
     }
-    [_watchPosition_3](successCallback) {
-      return this.watchPosition(successCallback);
+    [_watchPosition_3](...args) {
+      return this.watchPosition.apply(this, args);
     }
   };
   dart.setSignature(html$.Geolocation, {
@@ -59233,8 +59233,8 @@
     get [dartx.oldUrl]() {
       return this.oldURL;
     }
-    [_initHashChangeEvent](type, canBubble, cancelable, oldURL, newURL) {
-      return this.initHashChangeEvent(type, canBubble, cancelable, oldURL, newURL);
+    [_initHashChangeEvent](...args) {
+      return this.initHashChangeEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.HashChangeEvent, {
@@ -59401,14 +59401,14 @@
     get [_get_state]() {
       return this.state;
     }
-    [dartx.back]() {
-      return this.back();
+    [dartx.back](...args) {
+      return this.back.apply(this, args);
     }
-    [dartx.forward]() {
-      return this.forward();
+    [dartx.forward](...args) {
+      return this.forward.apply(this, args);
     }
-    [dartx.go](delta) {
-      return this.go(delta);
+    [dartx.go](...args) {
+      return this.go.apply(this, args);
     }
     [dartx.pushState](data, title, url, options) {
       if (options === void 0) options = null;
@@ -59422,11 +59422,11 @@
       this[_pushState_2](data_1, title, url);
       return;
     }
-    [_pushState_1](data, title, url, options) {
-      return this.pushState(data, title, url, options);
+    [_pushState_1](...args) {
+      return this.pushState.apply(this, args);
     }
-    [_pushState_2](data, title, url) {
-      return this.pushState(data, title, url);
+    [_pushState_2](...args) {
+      return this.pushState.apply(this, args);
     }
     [dartx.replaceState](data, title, url, options) {
       if (options === void 0) options = null;
@@ -59440,11 +59440,11 @@
       this[_replaceState_2](data_1, title, url);
       return;
     }
-    [_replaceState_1](data, title, url, options) {
-      return this.replaceState(data, title, url, options);
+    [_replaceState_1](...args) {
+      return this.replaceState.apply(this, args);
     }
-    [_replaceState_2](data, title, url) {
-      return this.replaceState(data, title, url);
+    [_replaceState_2](...args) {
+      return this.replaceState.apply(this, args);
     }
   };
   html$.History[dart.implements] = () => [html$.HistoryBase];
@@ -59509,11 +59509,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getEyeParameters](whichEye) {
-      return this.getEyeParameters(whichEye);
+    [dartx.getEyeParameters](...args) {
+      return this.getEyeParameters.apply(this, args);
     }
-    [dartx.setFieldOfView](leftFov, rightFov) {
-      return this.setFieldOfView(leftFov, rightFov);
+    [dartx.setFieldOfView](...args) {
+      return this.setFieldOfView.apply(this, args);
     }
   };
   dart.setSignature(html$.HmdvrDevice, {
@@ -59578,11 +59578,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   html$.HtmlCollection[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -59748,11 +59748,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   dart.setSignature(html$.HtmlFormControlsCollection, {
@@ -59784,8 +59784,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.HtmlOptionsCollection, {
@@ -60038,8 +60038,8 @@
       }
       return headers;
     }
-    [dartx.open](method, url, opts) {
-      return this.open(method, url, opts);
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -60095,23 +60095,23 @@
     set [dartx.withCredentials](value) {
       this.withCredentials = value;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.getAllResponseHeaders]() {
-      return this.getAllResponseHeaders();
+    [dartx.getAllResponseHeaders](...args) {
+      return this.getAllResponseHeaders.apply(this, args);
     }
-    [dartx.getResponseHeader](name) {
-      return this.getResponseHeader(name);
+    [dartx.getResponseHeader](...args) {
+      return this.getResponseHeader.apply(this, args);
     }
-    [dartx.overrideMimeType](mime) {
-      return this.overrideMimeType(mime);
+    [dartx.overrideMimeType](...args) {
+      return this.overrideMimeType.apply(this, args);
     }
-    [dartx.send](body_OR_data) {
-      return this.send(body_OR_data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.setRequestHeader](name, value) {
-      return this.setRequestHeader(name, value);
+    [dartx.setRequestHeader](...args) {
+      return this.setRequestHeader.apply(this, args);
     }
     get [dartx.onReadyStateChange]() {
       return html$.HttpRequest.readyStateChangeEvent.forTarget(this);
@@ -60513,8 +60513,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.inspect](objectId, hints) {
-      return this.inspect(objectId, hints);
+    [dartx.inspect](...args) {
+      return this.inspect.apply(this, args);
     }
   };
   dart.setSignature(html$.InjectedScriptHost, {
@@ -60977,29 +60977,29 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.select]() {
-      return this.select();
+    [dartx.select](...args) {
+      return this.select.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
-    [dartx.setRangeText](replacement, opts) {
-      return this.setRangeText(replacement, opts);
+    [dartx.setRangeText](...args) {
+      return this.setRangeText.apply(this, args);
     }
-    [dartx.setSelectionRange](start, end, direction) {
-      return this.setSelectionRange(start, end, direction);
+    [dartx.setSelectionRange](...args) {
+      return this.setSelectionRange.apply(this, args);
     }
-    [dartx.stepDown](n) {
-      return this.stepDown(n);
+    [dartx.stepDown](...args) {
+      return this.stepDown.apply(this, args);
     }
-    [dartx.stepUp](n) {
-      return this.stepUp(n);
+    [dartx.stepUp](...args) {
+      return this.stepUp.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.InputElement, 'created');
@@ -62294,8 +62294,8 @@
     get [dartx.shiftKey]() {
       return this.shiftKey;
     }
-    [dartx.getModifierState](keyArg) {
-      return this.getModifierState(keyArg);
+    [dartx.getModifierState](...args) {
+      return this.getModifierState.apply(this, args);
     }
   };
   dart.setSignature(html$.KeyboardEvent, {
@@ -62470,14 +62470,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.KeygenElement, 'created');
@@ -62802,14 +62802,14 @@
     set [dartx.search](value) {
       this.search = value;
     }
-    [dartx.assign](url) {
-      return this.assign(url);
+    [dartx.assign](...args) {
+      return this.assign.apply(this, args);
     }
-    [dartx.reload]() {
-      return this.reload();
+    [dartx.reload](...args) {
+      return this.reload.apply(this, args);
     }
-    [dartx.replace](url) {
-      return this.replace(url);
+    [dartx.replace](...args) {
+      return this.replace.apply(this, args);
     }
     get [dartx.origin]() {
       if ("origin" in this) {
@@ -62956,14 +62956,14 @@
     set [dartx.volume](value) {
       this.volume = value;
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.unpause]() {
-      return this.unpause();
+    [dartx.unpause](...args) {
+      return this.unpause.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaController, {
@@ -63035,15 +63035,15 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.enumerateDevices]() {
-      return this.enumerateDevices();
+    [dartx.enumerateDevices](...args) {
+      return this.enumerateDevices.apply(this, args);
     }
     [dartx.getUserMedia](options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_getUserMedia_1](options_1);
     }
-    [_getUserMedia_1](options) {
-      return this.getUserMedia(options);
+    [_getUserMedia_1](...args) {
+      return this.getUserMedia.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaDevices, {
@@ -63305,20 +63305,20 @@
     get [dartx.sessionId]() {
       return this.sessionId;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.generateRequest](initDataType, initData) {
-      return this.generateRequest(initDataType, initData);
+    [dartx.generateRequest](...args) {
+      return this.generateRequest.apply(this, args);
     }
-    [dartx.load](sessionId) {
-      return this.load(sessionId);
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
-    [dartx.remove]() {
-      return this.remove();
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
-    [_update$](response) {
-      return this.update(response);
+    [_update$](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeySession, {
@@ -63367,14 +63367,14 @@
     get [dartx.keySystem]() {
       return this.keySystem;
     }
-    [dartx.createMediaKeys]() {
-      return this.createMediaKeys();
+    [dartx.createMediaKeys](...args) {
+      return this.createMediaKeys.apply(this, args);
     }
     [dartx.getConfiguration]() {
       return html_common.convertNativeToDart_Dictionary(this[_getConfiguration_1]());
     }
-    [_getConfiguration_1]() {
-      return this.getConfiguration();
+    [_getConfiguration_1](...args) {
+      return this.getConfiguration.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeySystemAccess, {
@@ -63395,11 +63395,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_createSession](sessionType) {
-      return this.createSession(sessionType);
+    [_createSession](...args) {
+      return this.createSession.apply(this, args);
     }
-    [dartx.setServerCertificate](serverCertificate) {
-      return this.setServerCertificate(serverCertificate);
+    [dartx.setServerCertificate](...args) {
+      return this.setServerCertificate.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeys, {
@@ -63430,14 +63430,14 @@
     set [dartx.mediaText](value) {
       this.mediaText = value;
     }
-    [dartx.appendMedium](medium) {
-      return this.appendMedium(medium);
+    [dartx.appendMedium](...args) {
+      return this.appendMedium.apply(this, args);
     }
-    [dartx.deleteMedium](medium) {
-      return this.deleteMedium(medium);
+    [dartx.deleteMedium](...args) {
+      return this.deleteMedium.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaList, {
@@ -63470,11 +63470,11 @@
     get [dartx.media]() {
       return this.media;
     }
-    [dartx.addListener](listener) {
-      return this.addListener(listener);
+    [dartx.addListener](...args) {
+      return this.addListener.apply(this, args);
     }
-    [dartx.removeListener](listener) {
-      return this.removeListener(listener);
+    [dartx.removeListener](...args) {
+      return this.removeListener.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.MediaQueryList.changeEvent.forTarget(this);
@@ -63558,11 +63558,11 @@
     static _create_1() {
       return new MediaSession();
     }
-    [dartx.activate]() {
-      return this.activate();
+    [dartx.activate](...args) {
+      return this.activate.apply(this, args);
     }
-    [dartx.deactivate]() {
-      return this.deactivate();
+    [dartx.deactivate](...args) {
+      return this.deactivate.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaSession, {
@@ -63615,14 +63615,14 @@
     get [dartx.sourceBuffers]() {
       return this.sourceBuffers;
     }
-    [dartx.addSourceBuffer](type) {
-      return this.addSourceBuffer(type);
+    [dartx.addSourceBuffer](...args) {
+      return this.addSourceBuffer.apply(this, args);
     }
-    [dartx.endOfStream](error) {
-      return this.endOfStream(error);
+    [dartx.endOfStream](...args) {
+      return this.endOfStream.apply(this, args);
     }
-    [dartx.removeSourceBuffer](buffer) {
-      return this.removeSourceBuffer(buffer);
+    [dartx.removeSourceBuffer](...args) {
+      return this.removeSourceBuffer.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaSource, {
@@ -63704,29 +63704,29 @@
     get [dartx.label]() {
       return this.label;
     }
-    [dartx.addTrack](track) {
-      return this.addTrack(track);
+    [dartx.addTrack](...args) {
+      return this.addTrack.apply(this, args);
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
-    [dartx.getAudioTracks]() {
-      return this.getAudioTracks();
+    [dartx.getAudioTracks](...args) {
+      return this.getAudioTracks.apply(this, args);
     }
-    [dartx.getTrackById](trackId) {
-      return this.getTrackById(trackId);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
-    [dartx.getTracks]() {
-      return this.getTracks();
+    [dartx.getTracks](...args) {
+      return this.getTracks.apply(this, args);
     }
-    [dartx.getVideoTracks]() {
-      return this.getVideoTracks();
+    [dartx.getVideoTracks](...args) {
+      return this.getVideoTracks.apply(this, args);
     }
-    [dartx.removeTrack](track) {
-      return this.removeTrack(track);
+    [dartx.removeTrack](...args) {
+      return this.removeTrack.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onAddTrack]() {
       return html$.MediaStream.addTrackEvent.forTarget(this);
@@ -63872,8 +63872,8 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
     static getSources() {
       let completer = CompleterOfListOfSourceInfo().new();
@@ -63882,8 +63882,8 @@
       }, ListOfSourceInfoTovoid()));
       return completer.future;
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onEnded]() {
       return html$.MediaStreamTrack.endedEvent.forTarget(this);
@@ -64194,8 +64194,8 @@
     get [_get_source]() {
       return this.source;
     }
-    [_initMessageEvent](typeArg, canBubbleArg, cancelableArg, dataArg, originArg, lastEventIdArg, sourceArg, portsArg) {
-      return this.initMessageEvent(typeArg, canBubbleArg, cancelableArg, dataArg, originArg, lastEventIdArg, sourceArg, portsArg);
+    [_initMessageEvent](...args) {
+      return this.initMessageEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.MessageEvent, {
@@ -64231,8 +64231,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -64245,14 +64245,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.start]() {
-      return this.start();
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.MessagePort.messageEvent.forTarget(this);
@@ -64546,11 +64546,11 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.open]() {
-      return this.open();
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
   };
   dart.setSignature(html$.MidiPort, {
@@ -64660,8 +64660,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.send](data, timestamp) {
-      return this.send(data, timestamp);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
   };
   dart.setSignature(html$.MidiOutput, {
@@ -64772,11 +64772,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   html$.MimeTypeArray[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfMimeType()];
@@ -64983,8 +64983,8 @@
       this[_initMouseEvent_1](type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget_1);
       return;
     }
-    [_initMouseEvent_1](type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget) {
-      return this.initMouseEvent(type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget);
+    [_initMouseEvent_1](...args) {
+      return this.initMouseEvent.apply(this, args);
     }
     get [dartx.client]() {
       return new (PointOfnum())(this[_clientX], this[_clientY]);
@@ -65077,19 +65077,19 @@
     'observe'
   ]);
   html$.MutationObserver = class MutationObserver extends _interceptors.Interceptor {
-    [dartx.disconnect]() {
-      return this.disconnect();
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
     [_observe](target, options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       this[_observe_1](target, options_1);
       return;
     }
-    [_observe_1](target, options) {
-      return this.observe(target, options);
+    [_observe_1](...args) {
+      return this.observe.apply(this, args);
     }
-    [dartx.takeRecords]() {
-      return this.takeRecords();
+    [dartx.takeRecords](...args) {
+      return this.takeRecords.apply(this, args);
     }
     static get supported() {
       return !!(window.MutationObserver || window.WebKitMutationObserver);
@@ -65127,8 +65127,8 @@
     static _fixupList(list) {
       return list;
     }
-    [_call](target, options) {
-      return this.observe(target, options);
+    [_call](...args) {
+      return this.observe.apply(this, args);
     }
     static new(callback) {
       0;
@@ -65282,8 +65282,8 @@
         this.getUserMedia = this.getUserMedia || this.webkitGetUserMedia || this.mozGetUserMedia || this.msGetUserMedia;
       }
     }
-    [_getUserMedia](options, success, error) {
-      return this.getUserMedia(options, success, error);
+    [_getUserMedia](...args) {
+      return this.getUserMedia.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -65342,17 +65342,17 @@
     get [dartx.temporaryStorage]() {
       return this.webkitTemporaryStorage;
     }
-    [dartx.getBattery]() {
-      return this.getBattery();
+    [dartx.getBattery](...args) {
+      return this.getBattery.apply(this, args);
     }
-    [dartx.getGamepads]() {
-      return this.getGamepads();
+    [dartx.getGamepads](...args) {
+      return this.getGamepads.apply(this, args);
     }
-    [dartx.getVRDevices]() {
-      return this.getVRDevices();
+    [dartx.getVRDevices](...args) {
+      return this.getVRDevices.apply(this, args);
     }
-    [dartx.registerProtocolHandler](scheme, url, title) {
-      return this.registerProtocolHandler(scheme, url, title);
+    [dartx.registerProtocolHandler](...args) {
+      return this.registerProtocolHandler.apply(this, args);
     }
     [dartx.requestMidiAccess](options) {
       if (options === void 0) options = null;
@@ -65362,17 +65362,17 @@
       }
       return this[_requestMidiAccess_2]();
     }
-    [_requestMidiAccess_1](options) {
-      return this.requestMIDIAccess(options);
+    [_requestMidiAccess_1](...args) {
+      return this.requestMIDIAccess.apply(this, args);
     }
-    [_requestMidiAccess_2]() {
-      return this.requestMIDIAccess();
+    [_requestMidiAccess_2](...args) {
+      return this.requestMIDIAccess.apply(this, args);
     }
-    [dartx.requestMediaKeySystemAccess](keySystem, supportedConfigurations) {
-      return this.requestMediaKeySystemAccess(keySystem, supportedConfigurations);
+    [dartx.requestMediaKeySystemAccess](...args) {
+      return this.requestMediaKeySystemAccess.apply(this, args);
     }
-    [dartx.sendBeacon](url, data) {
-      return this.sendBeacon(url, data);
+    [dartx.sendBeacon](...args) {
+      return this.sendBeacon.apply(this, args);
     }
     get [dartx.hardwareConcurrency]() {
       return this.hardwareConcurrency;
@@ -65407,8 +65407,8 @@
     get [dartx.cookieEnabled]() {
       return this.cookieEnabled;
     }
-    [dartx.getStorageUpdates]() {
-      return this.getStorageUpdates();
+    [dartx.getStorageUpdates](...args) {
+      return this.getStorageUpdates.apply(this, args);
     }
   };
   html$.Navigator[dart.implements] = () => [html$.NavigatorStorageUtils, html$.NavigatorCpu, html$.NavigatorLanguage, html$.NavigatorOnLine, html$.NavigatorID];
@@ -65629,8 +65629,8 @@
     get [dartx.cookieEnabled]() {
       return this.cookieEnabled;
     }
-    [dartx.getStorageUpdates]() {
-      return this.getStorageUpdates();
+    [dartx.getStorageUpdates](...args) {
+      return this.getStorageUpdates.apply(this, args);
     }
   };
   dart.setSignature(html$.NavigatorStorageUtils, {
@@ -65937,14 +65937,14 @@
     get [dartx.whatToShow]() {
       return this.whatToShow;
     }
-    [dartx.detach]() {
-      return this.detach();
+    [dartx.detach](...args) {
+      return this.detach.apply(this, args);
     }
-    [dartx.nextNode]() {
-      return this.nextNode();
+    [dartx.nextNode](...args) {
+      return this.nextNode.apply(this, args);
     }
-    [dartx.previousNode]() {
-      return this.previousNode();
+    [dartx.previousNode](...args) {
+      return this.previousNode.apply(this, args);
     }
   };
   dart.setSignature(html$.NodeIterator, {
@@ -66017,8 +66017,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.NodeList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -66070,8 +66070,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
   };
   dart.setSignature(html$.NonElementParentNode, {
@@ -66161,8 +66161,8 @@
     get [dartx.vibrate]() {
       return this.vibrate;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     static requestPermission() {
       let completer = CompleterOfString().new();
@@ -66415,20 +66415,20 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ObjectElement, 'created');
@@ -66702,14 +66702,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.OutputElement, 'created');
@@ -66943,35 +66943,35 @@
     static _create_3(path_OR_text) {
       return new Path2D(path_OR_text);
     }
-    [dartx.addPath](path, transform) {
-      return this.addPath(path, transform);
+    [dartx.addPath](...args) {
+      return this.addPath.apply(this, args);
     }
-    [dartx.arc](x, y, radius, startAngle, endAngle, anticlockwise) {
-      return this.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+    [dartx.arc](...args) {
+      return this.arc.apply(this, args);
     }
-    [dartx.arcTo](x1, y1, x2, y2, radius) {
-      return this.arcTo(x1, y1, x2, y2, radius);
+    [dartx.arcTo](...args) {
+      return this.arcTo.apply(this, args);
     }
-    [dartx.bezierCurveTo](cp1x, cp1y, cp2x, cp2y, x, y) {
-      return this.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);
+    [dartx.bezierCurveTo](...args) {
+      return this.bezierCurveTo.apply(this, args);
     }
-    [dartx.closePath]() {
-      return this.closePath();
+    [dartx.closePath](...args) {
+      return this.closePath.apply(this, args);
     }
-    [dartx.ellipse](x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
-      return this.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);
+    [dartx.ellipse](...args) {
+      return this.ellipse.apply(this, args);
     }
-    [dartx.lineTo](x, y) {
-      return this.lineTo(x, y);
+    [dartx.lineTo](...args) {
+      return this.lineTo.apply(this, args);
     }
-    [dartx.moveTo](x, y) {
-      return this.moveTo(x, y);
+    [dartx.moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.quadraticCurveTo](cpx, cpy, x, y) {
-      return this.quadraticCurveTo(cpx, cpy, x, y);
+    [dartx.quadraticCurveTo](...args) {
+      return this.quadraticCurveTo.apply(this, args);
     }
-    [dartx.rect](x, y, width, height) {
-      return this.rect(x, y, width, height);
+    [dartx.rect](...args) {
+      return this.rect.apply(this, args);
     }
   };
   html$.Path2D[dart.implements] = () => [html$._CanvasPathMethods];
@@ -67034,41 +67034,41 @@
     get [dartx.timing]() {
       return this.timing;
     }
-    [dartx.clearFrameTimings]() {
-      return this.clearFrameTimings();
+    [dartx.clearFrameTimings](...args) {
+      return this.clearFrameTimings.apply(this, args);
     }
-    [dartx.clearMarks](markName) {
-      return this.clearMarks(markName);
+    [dartx.clearMarks](...args) {
+      return this.clearMarks.apply(this, args);
     }
-    [dartx.clearMeasures](measureName) {
-      return this.clearMeasures(measureName);
+    [dartx.clearMeasures](...args) {
+      return this.clearMeasures.apply(this, args);
     }
-    [dartx.getEntries]() {
-      return this.getEntries();
+    [dartx.getEntries](...args) {
+      return this.getEntries.apply(this, args);
     }
-    [dartx.getEntriesByName](name, entryType) {
-      return this.getEntriesByName(name, entryType);
+    [dartx.getEntriesByName](...args) {
+      return this.getEntriesByName.apply(this, args);
     }
-    [dartx.getEntriesByType](entryType) {
-      return this.getEntriesByType(entryType);
+    [dartx.getEntriesByType](...args) {
+      return this.getEntriesByType.apply(this, args);
     }
-    [dartx.mark](markName) {
-      return this.mark(markName);
+    [dartx.mark](...args) {
+      return this.mark.apply(this, args);
     }
-    [dartx.measure](measureName, startMark, endMark) {
-      return this.measure(measureName, startMark, endMark);
+    [dartx.measure](...args) {
+      return this.measure.apply(this, args);
     }
-    [dartx.now]() {
-      return this.now();
+    [dartx.now](...args) {
+      return this.now.apply(this, args);
     }
-    [dartx.setFrameTimingBufferSize](maxSize) {
-      return this.setFrameTimingBufferSize(maxSize);
+    [dartx.setFrameTimingBufferSize](...args) {
+      return this.setFrameTimingBufferSize.apply(this, args);
     }
-    [dartx.clearResourceTimings]() {
-      return this.webkitClearResourceTimings();
+    [dartx.clearResourceTimings](...args) {
+      return this.webkitClearResourceTimings.apply(this, args);
     }
-    [dartx.setResourceTimingBufferSize](maxSize) {
-      return this.webkitSetResourceTimingBufferSize(maxSize);
+    [dartx.setResourceTimingBufferSize](...args) {
+      return this.webkitSetResourceTimingBufferSize.apply(this, args);
     }
     get [dartx.onResourceTimingBufferFull]() {
       return html$.Performance.resourceTimingBufferFullEvent.forTarget(this);
@@ -67461,14 +67461,14 @@
     get [dartx.minPossiblePeriod]() {
       return this.minPossiblePeriod;
     }
-    [dartx.getRegistration](tag) {
-      return this.getRegistration(tag);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
-    [dartx.permissionState]() {
-      return this.permissionState();
+    [dartx.permissionState](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.register](options) {
       if (options === void 0) options = null;
@@ -67478,11 +67478,11 @@
       }
       return this[_register_2]();
     }
-    [_register_1](options) {
-      return this.register(options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2]() {
-      return this.register();
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
   };
   dart.setSignature(html$.PeriodicSyncManager, {
@@ -67521,8 +67521,8 @@
     get [dartx.tag]() {
       return this.tag;
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
   };
   dart.setSignature(html$.PeriodicSyncRegistration, {
@@ -67577,8 +67577,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.query](permission) {
-      return this.query(permission);
+    [dartx.query](...args) {
+      return this.query.apply(this, args);
     }
   };
   dart.setSignature(html$.Permissions, {
@@ -67626,11 +67626,11 @@
     get [dartx.name]() {
       return this.name;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   dart.setSignature(html$.Plugin, {
@@ -67702,14 +67702,14 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.refresh](reload) {
-      return this.refresh(reload);
+    [dartx.refresh](...args) {
+      return this.refresh.apply(this, args);
     }
   };
   html$.PluginArray[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfPlugin()];
@@ -67758,8 +67758,8 @@
     set [dartx.message](value) {
       this.message = value;
     }
-    [dartx.createdCallback]() {
-      return this.createdCallback();
+    [dartx.createdCallback](...args) {
+      return this.createdCallback.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.PluginPlaceholderElement, 'created');
@@ -67934,14 +67934,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getImmediateState]() {
-      return this.getImmediateState();
+    [dartx.getImmediateState](...args) {
+      return this.getImmediateState.apply(this, args);
     }
-    [dartx.getState]() {
-      return this.getState();
+    [dartx.getState](...args) {
+      return this.getState.apply(this, args);
     }
-    [dartx.resetSensor]() {
-      return this.resetSensor();
+    [dartx.resetSensor](...args) {
+      return this.resetSensor.apply(this, args);
     }
   };
   dart.setSignature(html$.PositionSensorVRDevice, {
@@ -67986,14 +67986,14 @@
     get [dartx.session]() {
       return this.session;
     }
-    [dartx.getAvailability](url) {
-      return this.getAvailability(url);
+    [dartx.getAvailability](...args) {
+      return this.getAvailability.apply(this, args);
     }
-    [dartx.joinSession](url, presentationId) {
-      return this.joinSession(url, presentationId);
+    [dartx.joinSession](...args) {
+      return this.joinSession.apply(this, args);
     }
-    [dartx.startSession](url) {
-      return this.startSession(url);
+    [dartx.startSession](...args) {
+      return this.startSession.apply(this, args);
     }
   };
   dart.setSignature(html$.Presentation, {
@@ -68057,11 +68057,11 @@
     get [dartx.state]() {
       return this.state;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data_OR_message) {
-      return this.send(data_OR_message);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.PresentationSession.messageEvent.forTarget(this);
@@ -68314,8 +68314,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getSubscription]() {
-      return this.getSubscription();
+    [dartx.getSubscription](...args) {
+      return this.getSubscription.apply(this, args);
     }
     [dartx.permissionState](options) {
       if (options === void 0) options = null;
@@ -68325,11 +68325,11 @@
       }
       return this[_permissionState_2]();
     }
-    [_permissionState_1](options) {
-      return this.permissionState(options);
+    [_permissionState_1](...args) {
+      return this.permissionState.apply(this, args);
     }
-    [_permissionState_2]() {
-      return this.permissionState();
+    [_permissionState_2](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.subscribe](options) {
       if (options === void 0) options = null;
@@ -68339,11 +68339,11 @@
       }
       return this[_subscribe_2]();
     }
-    [_subscribe_1](options) {
-      return this.subscribe(options);
+    [_subscribe_1](...args) {
+      return this.subscribe.apply(this, args);
     }
-    [_subscribe_2]() {
-      return this.subscribe();
+    [_subscribe_2](...args) {
+      return this.subscribe.apply(this, args);
     }
   };
   dart.setSignature(html$.PushManager, {
@@ -68375,17 +68375,17 @@
     static _create_1(message) {
       return new PushMessageData(message);
     }
-    [dartx.arrayBuffer]() {
-      return this.arrayBuffer();
+    [dartx.arrayBuffer](...args) {
+      return this.arrayBuffer.apply(this, args);
     }
-    [dartx.blob]() {
-      return this.blob();
+    [dartx.blob](...args) {
+      return this.blob.apply(this, args);
     }
-    [dartx.json]() {
-      return this.json();
+    [dartx.json](...args) {
+      return this.json.apply(this, args);
     }
-    [dartx.text]() {
-      return this.text();
+    [dartx.text](...args) {
+      return this.text.apply(this, args);
     }
   };
   dart.setSignature(html$.PushMessageData, {
@@ -68414,8 +68414,8 @@
     get [dartx.endpoint]() {
       return this.endpoint;
     }
-    [dartx.unsubscribe]() {
-      return this.unsubscribe();
+    [dartx.unsubscribe](...args) {
+      return this.unsubscribe.apply(this, args);
     }
   };
   dart.setSignature(html$.PushSubscription, {
@@ -68517,74 +68517,74 @@
     get [dartx.startOffset]() {
       return this.startOffset;
     }
-    [dartx.cloneContents]() {
-      return this.cloneContents();
+    [dartx.cloneContents](...args) {
+      return this.cloneContents.apply(this, args);
     }
-    [dartx.cloneRange]() {
-      return this.cloneRange();
+    [dartx.cloneRange](...args) {
+      return this.cloneRange.apply(this, args);
     }
-    [dartx.collapse](toStart) {
-      return this.collapse(toStart);
+    [dartx.collapse](...args) {
+      return this.collapse.apply(this, args);
     }
-    [dartx.compareBoundaryPoints](how, sourceRange) {
-      return this.compareBoundaryPoints(how, sourceRange);
+    [dartx.compareBoundaryPoints](...args) {
+      return this.compareBoundaryPoints.apply(this, args);
     }
-    [dartx.comparePoint](node, offset) {
-      return this.comparePoint(node, offset);
+    [dartx.comparePoint](...args) {
+      return this.comparePoint.apply(this, args);
     }
-    [dartx.createContextualFragment](fragment) {
-      return this.createContextualFragment(fragment);
+    [dartx.createContextualFragment](...args) {
+      return this.createContextualFragment.apply(this, args);
     }
-    [dartx.deleteContents]() {
-      return this.deleteContents();
+    [dartx.deleteContents](...args) {
+      return this.deleteContents.apply(this, args);
     }
-    [dartx.detach]() {
-      return this.detach();
+    [dartx.detach](...args) {
+      return this.detach.apply(this, args);
     }
-    [dartx.expand](unit) {
-      return this.expand(unit);
+    [dartx.expand](...args) {
+      return this.expand.apply(this, args);
     }
-    [dartx.extractContents]() {
-      return this.extractContents();
+    [dartx.extractContents](...args) {
+      return this.extractContents.apply(this, args);
     }
-    [dartx.getBoundingClientRect]() {
-      return this.getBoundingClientRect();
+    [dartx.getBoundingClientRect](...args) {
+      return this.getBoundingClientRect.apply(this, args);
     }
-    [dartx.getClientRects]() {
-      return this.getClientRects();
+    [dartx.getClientRects](...args) {
+      return this.getClientRects.apply(this, args);
     }
-    [dartx.insertNode](node) {
-      return this.insertNode(node);
+    [dartx.insertNode](...args) {
+      return this.insertNode.apply(this, args);
     }
-    [dartx.isPointInRange](node, offset) {
-      return this.isPointInRange(node, offset);
+    [dartx.isPointInRange](...args) {
+      return this.isPointInRange.apply(this, args);
     }
-    [dartx.selectNode](node) {
-      return this.selectNode(node);
+    [dartx.selectNode](...args) {
+      return this.selectNode.apply(this, args);
     }
-    [dartx.selectNodeContents](node) {
-      return this.selectNodeContents(node);
+    [dartx.selectNodeContents](...args) {
+      return this.selectNodeContents.apply(this, args);
     }
-    [dartx.setEnd](node, offset) {
-      return this.setEnd(node, offset);
+    [dartx.setEnd](...args) {
+      return this.setEnd.apply(this, args);
     }
-    [dartx.setEndAfter](node) {
-      return this.setEndAfter(node);
+    [dartx.setEndAfter](...args) {
+      return this.setEndAfter.apply(this, args);
     }
-    [dartx.setEndBefore](node) {
-      return this.setEndBefore(node);
+    [dartx.setEndBefore](...args) {
+      return this.setEndBefore.apply(this, args);
     }
-    [dartx.setStart](node, offset) {
-      return this.setStart(node, offset);
+    [dartx.setStart](...args) {
+      return this.setStart.apply(this, args);
     }
-    [dartx.setStartAfter](node) {
-      return this.setStartAfter(node);
+    [dartx.setStartAfter](...args) {
+      return this.setStartAfter.apply(this, args);
     }
-    [dartx.setStartBefore](node) {
-      return this.setStartBefore(node);
+    [dartx.setStartBefore](...args) {
+      return this.setStartBefore.apply(this, args);
     }
-    [dartx.surroundContents](newParent) {
-      return this.surroundContents(newParent);
+    [dartx.surroundContents](...args) {
+      return this.surroundContents.apply(this, args);
     }
     static get supportsCreateContextualFragment() {
       return "createContextualFragment" in window.Range.prototype;
@@ -68650,11 +68650,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getReader]() {
-      return this.getReader();
+    [dartx.getReader](...args) {
+      return this.getReader.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableByteStream, {
@@ -68678,14 +68678,14 @@
     get [dartx.closed]() {
       return this.closed;
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.read]() {
-      return this.read();
+    [dartx.read](...args) {
+      return this.read.apply(this, args);
     }
-    [dartx.releaseLock]() {
-      return this.releaseLock();
+    [dartx.releaseLock](...args) {
+      return this.releaseLock.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableByteStreamReader, {
@@ -68706,11 +68706,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getReader]() {
-      return this.getReader();
+    [dartx.getReader](...args) {
+      return this.getReader.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableStream, {
@@ -68734,14 +68734,14 @@
     get [dartx.closed]() {
       return this.closed;
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.read]() {
-      return this.read();
+    [dartx.read](...args) {
+      return this.read.apply(this, args);
     }
-    [dartx.releaseLock]() {
-      return this.releaseLock();
+    [dartx.releaseLock](...args) {
+      return this.releaseLock.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableStreamReader, {
@@ -68876,23 +68876,23 @@
     get [dartx.reliable]() {
       return this.reliable;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data) {
-      return this.send(data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendBlob](data) {
-      return this.send(data);
+    [dartx.sendBlob](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendByteBuffer](data) {
-      return this.send(data);
+    [dartx.sendByteBuffer](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendString](data) {
-      return this.send(data);
+    [dartx.sendString](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendTypedData](data) {
-      return this.send(data);
+    [dartx.sendTypedData](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onClose]() {
       return html$.RtcDataChannel.closeEvent.forTarget(this);
@@ -69003,8 +69003,8 @@
     get [dartx.track]() {
       return this.track;
     }
-    [dartx.insertDtmf](tones, duration, interToneGap) {
-      return this.insertDTMF(tones, duration, interToneGap);
+    [dartx.insertDtmf](...args) {
+      return this.insertDTMF.apply(this, args);
     }
     get [dartx.onToneChange]() {
       return html$.RtcDtmfSender.toneChangeEvent.forTarget(this);
@@ -69229,8 +69229,8 @@
     get [dartx.signalingState]() {
       return this.signalingState;
     }
-    [dartx.addIceCandidate](candidate, successCallback, failureCallback) {
-      return this.addIceCandidate(candidate, successCallback, failureCallback);
+    [dartx.addIceCandidate](...args) {
+      return this.addIceCandidate.apply(this, args);
     }
     [dartx.addStream](stream, mediaConstraints) {
       if (mediaConstraints === void 0) mediaConstraints = null;
@@ -69242,14 +69242,14 @@
       this[_addStream_2](stream);
       return;
     }
-    [_addStream_1](stream, mediaConstraints) {
-      return this.addStream(stream, mediaConstraints);
+    [_addStream_1](...args) {
+      return this.addStream.apply(this, args);
     }
-    [_addStream_2](stream) {
-      return this.addStream(stream);
+    [_addStream_2](...args) {
+      return this.addStream.apply(this, args);
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [_createAnswer](successCallback, failureCallback, mediaConstraints) {
       if (failureCallback === void 0) failureCallback = null;
@@ -69262,14 +69262,14 @@
       this[_createAnswer_2](successCallback, failureCallback);
       return;
     }
-    [_createAnswer_1](successCallback, failureCallback, mediaConstraints) {
-      return this.createAnswer(successCallback, failureCallback, mediaConstraints);
+    [_createAnswer_1](...args) {
+      return this.createAnswer.apply(this, args);
     }
-    [_createAnswer_2](successCallback, failureCallback) {
-      return this.createAnswer(successCallback, failureCallback);
+    [_createAnswer_2](...args) {
+      return this.createAnswer.apply(this, args);
     }
-    [dartx.createDtmfSender](track) {
-      return this.createDTMFSender(track);
+    [dartx.createDtmfSender](...args) {
+      return this.createDTMFSender.apply(this, args);
     }
     [dartx.createDataChannel](label, options) {
       if (options === void 0) options = null;
@@ -69279,11 +69279,11 @@
       }
       return this[_createDataChannel_2](label);
     }
-    [_createDataChannel_1](label, options) {
-      return this.createDataChannel(label, options);
+    [_createDataChannel_1](...args) {
+      return this.createDataChannel.apply(this, args);
     }
-    [_createDataChannel_2](label) {
-      return this.createDataChannel(label);
+    [_createDataChannel_2](...args) {
+      return this.createDataChannel.apply(this, args);
     }
     [_createOffer](successCallback, failureCallback, rtcOfferOptions) {
       if (failureCallback === void 0) failureCallback = null;
@@ -69296,29 +69296,29 @@
       this[_createOffer_2](successCallback, failureCallback);
       return;
     }
-    [_createOffer_1](successCallback, failureCallback, rtcOfferOptions) {
-      return this.createOffer(successCallback, failureCallback, rtcOfferOptions);
+    [_createOffer_1](...args) {
+      return this.createOffer.apply(this, args);
     }
-    [_createOffer_2](successCallback, failureCallback) {
-      return this.createOffer(successCallback, failureCallback);
+    [_createOffer_2](...args) {
+      return this.createOffer.apply(this, args);
     }
-    [dartx.getLocalStreams]() {
-      return this.getLocalStreams();
+    [dartx.getLocalStreams](...args) {
+      return this.getLocalStreams.apply(this, args);
     }
-    [dartx.getRemoteStreams]() {
-      return this.getRemoteStreams();
+    [dartx.getRemoteStreams](...args) {
+      return this.getRemoteStreams.apply(this, args);
     }
-    [_getStats](successCallback, selector) {
-      return this.getStats(successCallback, selector);
+    [_getStats](...args) {
+      return this.getStats.apply(this, args);
     }
-    [dartx.getStreamById](streamId) {
-      return this.getStreamById(streamId);
+    [dartx.getStreamById](...args) {
+      return this.getStreamById.apply(this, args);
     }
-    [dartx.removeStream](stream) {
-      return this.removeStream(stream);
+    [dartx.removeStream](...args) {
+      return this.removeStream.apply(this, args);
     }
-    [_setLocalDescription](description, successCallback, failureCallback) {
-      return this.setLocalDescription(description, successCallback, failureCallback);
+    [_setLocalDescription](...args) {
+      return this.setLocalDescription.apply(this, args);
     }
     [dartx.setLocalDescription](description) {
       let completer = async.Completer.new();
@@ -69329,8 +69329,8 @@
       }, StringTovoid$()));
       return completer.future;
     }
-    [_setRemoteDescription](description, successCallback, failureCallback) {
-      return this.setRemoteDescription(description, successCallback, failureCallback);
+    [_setRemoteDescription](...args) {
+      return this.setRemoteDescription.apply(this, args);
     }
     [dartx.setRemoteDescription](description) {
       let completer = async.Completer.new();
@@ -69358,14 +69358,14 @@
       this[_updateIce_3]();
       return;
     }
-    [_updateIce_1](configuration, mediaConstraints) {
-      return this.updateIce(configuration, mediaConstraints);
+    [_updateIce_1](...args) {
+      return this.updateIce.apply(this, args);
     }
-    [_updateIce_2](configuration) {
-      return this.updateIce(configuration);
+    [_updateIce_2](...args) {
+      return this.updateIce.apply(this, args);
     }
-    [_updateIce_3]() {
-      return this.updateIce();
+    [_updateIce_3](...args) {
+      return this.updateIce.apply(this, args);
     }
     get [dartx.onAddStream]() {
       return html$.RtcPeerConnection.addStreamEvent.forTarget(this);
@@ -69540,11 +69540,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.names]() {
-      return this.names();
+    [dartx.names](...args) {
+      return this.names.apply(this, args);
     }
-    [dartx.stat](name) {
-      return this.stat(name);
+    [dartx.stat](...args) {
+      return this.stat.apply(this, args);
     }
   };
   dart.setSignature(html$.RtcStatsReport, {
@@ -69569,11 +69569,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.result]() {
-      return this.result();
+    [dartx.result](...args) {
+      return this.result.apply(this, args);
     }
   };
   dart.setSignature(html$.RtcStatsResponse, {
@@ -69664,11 +69664,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.lock](orientation) {
-      return this.lock(orientation);
+    [dartx.lock](...args) {
+      return this.lock.apply(this, args);
     }
-    [dartx.unlock]() {
-      return this.unlock();
+    [dartx.unlock](...args) {
+      return this.unlock.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.ScreenOrientation.changeEvent.forTarget(this);
@@ -69898,8 +69898,8 @@
     get [dartx.velocityY]() {
       return this.velocityY;
     }
-    [dartx.consumeDelta](x, y) {
-      return this.consumeDelta(x, y);
+    [dartx.consumeDelta](...args) {
+      return this.consumeDelta.apply(this, args);
     }
   };
   dart.setSignature(html$.ScrollState, {
@@ -70141,26 +70141,26 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [__setter__](index, option) {
-      return this.__setter__(index, option);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.add](element, before) {
-      return this.add(element, before);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
     get [dartx.options]() {
       let options = ListOfOptionElement().from(this[dartx.querySelectorAll](html$.Element)('option'));
@@ -70278,47 +70278,47 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.addRange](range) {
-      return this.addRange(range);
+    [dartx.addRange](...args) {
+      return this.addRange.apply(this, args);
     }
-    [dartx.collapse](node, offset) {
-      return this.collapse(node, offset);
+    [dartx.collapse](...args) {
+      return this.collapse.apply(this, args);
     }
-    [dartx.collapseToEnd]() {
-      return this.collapseToEnd();
+    [dartx.collapseToEnd](...args) {
+      return this.collapseToEnd.apply(this, args);
     }
-    [dartx.collapseToStart]() {
-      return this.collapseToStart();
+    [dartx.collapseToStart](...args) {
+      return this.collapseToStart.apply(this, args);
     }
-    [dartx.containsNode](node, allowPartialContainment) {
-      return this.containsNode(node, allowPartialContainment);
+    [dartx.containsNode](...args) {
+      return this.containsNode.apply(this, args);
     }
-    [dartx.deleteFromDocument]() {
-      return this.deleteFromDocument();
+    [dartx.deleteFromDocument](...args) {
+      return this.deleteFromDocument.apply(this, args);
     }
-    [dartx.empty]() {
-      return this.empty();
+    [dartx.empty](...args) {
+      return this.empty.apply(this, args);
     }
-    [dartx.extend](node, offset) {
-      return this.extend(node, offset);
+    [dartx.extend](...args) {
+      return this.extend.apply(this, args);
     }
-    [dartx.getRangeAt](index) {
-      return this.getRangeAt(index);
+    [dartx.getRangeAt](...args) {
+      return this.getRangeAt.apply(this, args);
     }
-    [dartx.modify](alter, direction, granularity) {
-      return this.modify(alter, direction, granularity);
+    [dartx.modify](...args) {
+      return this.modify.apply(this, args);
     }
-    [dartx.removeAllRanges]() {
-      return this.removeAllRanges();
+    [dartx.removeAllRanges](...args) {
+      return this.removeAllRanges.apply(this, args);
     }
-    [dartx.selectAllChildren](node) {
-      return this.selectAllChildren(node);
+    [dartx.selectAllChildren](...args) {
+      return this.selectAllChildren.apply(this, args);
     }
-    [dartx.setBaseAndExtent](baseNode, baseOffset, extentNode, extentOffset) {
-      return this.setBaseAndExtent(baseNode, baseOffset, extentNode, extentOffset);
+    [dartx.setBaseAndExtent](...args) {
+      return this.setBaseAndExtent.apply(this, args);
     }
-    [dartx.setPosition](node, offset) {
-      return this.setPosition(node, offset);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
   };
   dart.setSignature(html$.Selection, {
@@ -70374,8 +70374,8 @@
     get [dartx.targetUrl]() {
       return this.targetURL;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -70388,11 +70388,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.ServicePort, {
@@ -70430,18 +70430,18 @@
       }
       return this[_connect_2](url);
     }
-    [_connect_1](url, options) {
-      return this.connect(url, options);
+    [_connect_1](...args) {
+      return this.connect.apply(this, args);
     }
-    [_connect_2](url) {
-      return this.connect(url);
+    [_connect_2](...args) {
+      return this.connect.apply(this, args);
     }
     [dartx.match](options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_match_1](options_1);
     }
-    [_match_1](options) {
-      return this.match(options);
+    [_match_1](...args) {
+      return this.match.apply(this, args);
     }
     [dartx.matchAll](options) {
       if (options === void 0) options = null;
@@ -70451,11 +70451,11 @@
       }
       return this[_matchAll_2]();
     }
-    [_matchAll_1](options) {
-      return this.matchAll(options);
+    [_matchAll_1](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [_matchAll_2]() {
-      return this.matchAll();
+    [_matchAll_2](...args) {
+      return this.matchAll.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServicePortCollection.messageEvent.forTarget(this);
@@ -70511,8 +70511,8 @@
     get [dartx.targetUrl]() {
       return this.targetURL;
     }
-    [dartx.respondWith](response) {
-      return this.respondWith(response);
+    [dartx.respondWith](...args) {
+      return this.respondWith.apply(this, args);
     }
   };
   dart.setSignature(html$.ServicePortConnectEvent, {
@@ -70550,11 +70550,11 @@
     get [dartx.ready]() {
       return this.ready;
     }
-    [dartx.getRegistration](documentURL) {
-      return this.getRegistration(documentURL);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
     [dartx.register](url, options) {
       if (options === void 0) options = null;
@@ -70564,11 +70564,11 @@
       }
       return this[_register_2](url);
     }
-    [_register_1](url, options) {
-      return this.register(url, options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2](url) {
-      return this.register(url);
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServiceWorkerContainer.messageEvent.forTarget(this);
@@ -70616,8 +70616,8 @@
     get [dartx.registration]() {
       return this.registration;
     }
-    [dartx.skipWaiting]() {
-      return this.skipWaiting();
+    [dartx.skipWaiting](...args) {
+      return this.skipWaiting.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServiceWorkerGlobalScope.messageEvent.forTarget(this);
@@ -70758,11 +70758,11 @@
       }
       return this[_getNotifications_2]();
     }
-    [_getNotifications_1](filter) {
-      return this.getNotifications(filter);
+    [_getNotifications_1](...args) {
+      return this.getNotifications.apply(this, args);
     }
-    [_getNotifications_2]() {
-      return this.getNotifications();
+    [_getNotifications_2](...args) {
+      return this.getNotifications.apply(this, args);
     }
     [dartx.showNotification](title, options) {
       if (options === void 0) options = null;
@@ -70772,17 +70772,17 @@
       }
       return this[_showNotification_2](title);
     }
-    [_showNotification_1](title, options) {
-      return this.showNotification(title, options);
+    [_showNotification_1](...args) {
+      return this.showNotification.apply(this, args);
     }
-    [_showNotification_2](title) {
-      return this.showNotification(title);
+    [_showNotification_2](...args) {
+      return this.showNotification.apply(this, args);
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
-    [dartx.update]() {
-      return this.update();
+    [dartx.update](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(html$.ServiceWorkerRegistration, {
@@ -70825,8 +70825,8 @@
     static get supported() {
       return html$.Element.isTagSupported('shadow');
     }
-    [dartx.getDistributedNodes]() {
-      return this.getDistributedNodes();
+    [dartx.getDistributedNodes](...args) {
+      return this.getDistributedNodes.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ShadowElement, 'created');
@@ -70881,17 +70881,17 @@
     get [dartx.styleSheets]() {
       return this.styleSheets;
     }
-    [dartx.clone](deep) {
-      return this.cloneNode(deep);
+    [dartx.clone](...args) {
+      return this.cloneNode.apply(this, args);
     }
-    [dartx.elementFromPoint](x, y) {
-      return this.elementFromPoint(x, y);
+    [dartx.elementFromPoint](...args) {
+      return this.elementFromPoint.apply(this, args);
     }
-    [dartx.elementsFromPoint](x, y) {
-      return this.elementsFromPoint(x, y);
+    [dartx.elementsFromPoint](...args) {
+      return this.elementsFromPoint.apply(this, args);
     }
-    [dartx.getSelection]() {
-      return this.getSelection();
+    [dartx.getSelection](...args) {
+      return this.getSelection.apply(this, args);
     }
     static get supported() {
       return !!(Element.prototype.createShadowRoot || Element.prototype.webkitCreateShadowRoot);
@@ -71101,20 +71101,20 @@
     get [dartx.updating]() {
       return this.updating;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.appendBuffer](data) {
-      return this.appendBuffer(data);
+    [dartx.appendBuffer](...args) {
+      return this.appendBuffer.apply(this, args);
     }
-    [dartx.appendStream](stream, maxSize) {
-      return this.appendStream(stream, maxSize);
+    [dartx.appendStream](...args) {
+      return this.appendStream.apply(this, args);
     }
-    [dartx.appendTypedData](data) {
-      return this.appendBuffer(data);
+    [dartx.appendTypedData](...args) {
+      return this.appendBuffer.apply(this, args);
     }
-    [dartx.remove](start, end) {
-      return this.remove(start, end);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
   };
   dart.setSignature(html$.SourceBuffer, {
@@ -71190,8 +71190,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.SourceBufferList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSourceBuffer()];
@@ -71435,14 +71435,14 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.addFromString](string, weight) {
-      return this.addFromString(string, weight);
+    [dartx.addFromString](...args) {
+      return this.addFromString.apply(this, args);
     }
-    [dartx.addFromUri](src, weight) {
-      return this.addFromUri(src, weight);
+    [dartx.addFromUri](...args) {
+      return this.addFromUri.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.SpeechGrammarList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSpeechGrammar()];
@@ -71542,14 +71542,14 @@
     set [dartx.serviceUri](value) {
       this.serviceURI = value;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.start]() {
-      return this.start();
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onAudioEnd]() {
       return html$.SpeechRecognition.audioEndEvent.forTarget(this);
@@ -71809,8 +71809,8 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.SpeechRecognitionResult, {
@@ -71845,20 +71845,20 @@
     get [dartx.speaking]() {
       return this.speaking;
     }
-    [dartx.cancel]() {
-      return this.cancel();
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getVoices]() {
-      return this.getVoices();
+    [dartx.getVoices](...args) {
+      return this.getVoices.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.resume]() {
-      return this.resume();
+    [dartx.resume](...args) {
+      return this.resume.apply(this, args);
     }
-    [dartx.speak](utterance) {
-      return this.speak(utterance);
+    [dartx.speak](...args) {
+      return this.speak.apply(this, args);
     }
   };
   dart.setSignature(html$.SpeechSynthesis, {
@@ -72123,8 +72123,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.add](name, port) {
-      return this.add(name, port);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.StashedPortCollection.messageEvent.forTarget(this);
@@ -72227,29 +72227,29 @@
     get [_length$2]() {
       return this.length;
     }
-    [__delete__](index_OR_name) {
-      return this.__delete__(index_OR_name);
+    [__delete__](...args) {
+      return this.__delete__.apply(this, args);
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [_clear$1]() {
-      return this.clear();
+    [_clear$1](...args) {
+      return this.clear.apply(this, args);
     }
-    [_getItem](key) {
-      return this.getItem(key);
+    [_getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [_key](index) {
-      return this.key(index);
+    [_key](...args) {
+      return this.key.apply(this, args);
     }
-    [_removeItem](key) {
-      return this.removeItem(key);
+    [_removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [_setItem](key, data) {
-      return this.setItem(key, data);
+    [_setItem](...args) {
+      return this.setItem.apply(this, args);
     }
   };
   html$.Storage[dart.implements] = () => [MapOfString$String()];
@@ -72335,8 +72335,8 @@
     get [dartx.url]() {
       return this.url;
     }
-    [_initStorageEvent](typeArg, canBubbleArg, cancelableArg, keyArg, oldValueArg, newValueArg, urlArg, storageAreaArg) {
-      return this.initStorageEvent(typeArg, canBubbleArg, cancelableArg, keyArg, oldValueArg, newValueArg, urlArg, storageAreaArg);
+    [_initStorageEvent](...args) {
+      return this.initStorageEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.StorageEvent, {
@@ -72394,11 +72394,11 @@
     get [dartx.supportedTypes]() {
       return this.supportedTypes;
     }
-    [dartx.queryInfo](type) {
-      return this.queryInfo(type);
+    [dartx.queryInfo](...args) {
+      return this.queryInfo.apply(this, args);
     }
-    [dartx.requestPersistentQuota](newQuota) {
-      return this.requestPersistentQuota(newQuota);
+    [dartx.requestPersistentQuota](...args) {
+      return this.requestPersistentQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.StorageQuota, {
@@ -72481,8 +72481,8 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.matchMedium](mediaquery) {
-      return this.matchMedium(mediaquery);
+    [dartx.matchMedium](...args) {
+      return this.matchMedium.apply(this, args);
     }
   };
   dart.setSignature(html$.StyleMedia, {
@@ -72529,14 +72529,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getRegistration](tag) {
-      return this.getRegistration(tag);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
-    [dartx.permissionState]() {
-      return this.permissionState();
+    [dartx.permissionState](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.register](options) {
       if (options === void 0) options = null;
@@ -72546,11 +72546,11 @@
       }
       return this[_register_2]();
     }
-    [_register_1](options) {
-      return this.register(options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2]() {
-      return this.register();
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
   };
   dart.setSignature(html$.SyncManager, {
@@ -72576,8 +72576,8 @@
     get [dartx.tag]() {
       return this.tag;
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
   };
   dart.setSignature(html$.SyncRegistration, {
@@ -72755,8 +72755,8 @@
       this[dartx.children][dartx.add](tbody);
       return html$.TableSectionElement._check(tbody);
     }
-    [_nativeCreateTBody]() {
-      return this.createTBody();
+    [_nativeCreateTBody](...args) {
+      return this.createTBody.apply(this, args);
     }
     [dartx.createFragment](html, opts) {
       let validator = opts && 'validator' in opts ? opts.validator : null;
@@ -72808,29 +72808,29 @@
     set [dartx.tHead](value) {
       this.tHead = value;
     }
-    [_createCaption]() {
-      return this.createCaption();
+    [_createCaption](...args) {
+      return this.createCaption.apply(this, args);
     }
-    [_createTFoot]() {
-      return this.createTFoot();
+    [_createTFoot](...args) {
+      return this.createTFoot.apply(this, args);
     }
-    [_createTHead]() {
-      return this.createTHead();
+    [_createTHead](...args) {
+      return this.createTHead.apply(this, args);
     }
-    [dartx.deleteCaption]() {
-      return this.deleteCaption();
+    [dartx.deleteCaption](...args) {
+      return this.deleteCaption.apply(this, args);
     }
-    [dartx.deleteRow](index) {
-      return this.deleteRow(index);
+    [dartx.deleteRow](...args) {
+      return this.deleteRow.apply(this, args);
     }
-    [dartx.deleteTFoot]() {
-      return this.deleteTFoot();
+    [dartx.deleteTFoot](...args) {
+      return this.deleteTFoot.apply(this, args);
     }
-    [dartx.deleteTHead]() {
-      return this.deleteTHead();
+    [dartx.deleteTHead](...args) {
+      return this.deleteTHead.apply(this, args);
     }
-    [_insertRow](index) {
-      return this.insertRow(index);
+    [_insertRow](...args) {
+      return this.insertRow.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableElement, 'created');
@@ -72925,11 +72925,11 @@
     get [dartx.sectionRowIndex]() {
       return this.sectionRowIndex;
     }
-    [dartx.deleteCell](index) {
-      return this.deleteCell(index);
+    [dartx.deleteCell](...args) {
+      return this.deleteCell.apply(this, args);
     }
-    [_insertCell](index) {
-      return this.insertCell(index);
+    [_insertCell](...args) {
+      return this.insertCell.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableRowElement, 'created');
@@ -72991,11 +72991,11 @@
     get [_rows]() {
       return this.rows;
     }
-    [dartx.deleteRow](index) {
-      return this.deleteRow(index);
+    [dartx.deleteRow](...args) {
+      return this.deleteRow.apply(this, args);
     }
-    [_insertRow](index) {
-      return this.insertRow(index);
+    [_insertRow](...args) {
+      return this.insertRow.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableSectionElement, 'created');
@@ -73259,23 +73259,23 @@
     set [dartx.wrap](value) {
       this.wrap = value;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.select]() {
-      return this.select();
+    [dartx.select](...args) {
+      return this.select.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
-    [dartx.setRangeText](replacement, opts) {
-      return this.setRangeText(replacement, opts);
+    [dartx.setRangeText](...args) {
+      return this.setRangeText.apply(this, args);
     }
-    [dartx.setSelectionRange](start, end, direction) {
-      return this.setSelectionRange(start, end, direction);
+    [dartx.setSelectionRange](...args) {
+      return this.setSelectionRange.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TextAreaElement, 'created');
@@ -73346,8 +73346,8 @@
     get [dartx.data]() {
       return this.data;
     }
-    [_initTextEvent](typeArg, canBubbleArg, cancelableArg, viewArg, dataArg) {
-      return this.initTextEvent(typeArg, canBubbleArg, cancelableArg, viewArg, dataArg);
+    [_initTextEvent](...args) {
+      return this.initTextEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.TextEvent, {
@@ -73478,17 +73478,17 @@
     get [dartx.regions]() {
       return this.regions;
     }
-    [dartx.addCue](cue) {
-      return this.addCue(cue);
+    [dartx.addCue](...args) {
+      return this.addCue.apply(this, args);
     }
-    [dartx.addRegion](region) {
-      return this.addRegion(region);
+    [dartx.addRegion](...args) {
+      return this.addRegion.apply(this, args);
     }
-    [dartx.removeCue](cue) {
-      return this.removeCue(cue);
+    [dartx.removeCue](...args) {
+      return this.removeCue.apply(this, args);
     }
-    [dartx.removeRegion](region) {
-      return this.removeRegion(region);
+    [dartx.removeRegion](...args) {
+      return this.removeRegion.apply(this, args);
     }
     get [dartx.onCueChange]() {
       return html$.TextTrack.cueChangeEvent.forTarget(this);
@@ -73649,11 +73649,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getCueById](id) {
-      return this.getCueById(id);
+    [dartx.getCueById](...args) {
+      return this.getCueById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.TextTrackCueList[dart.implements] = () => [ListOfTextTrackCue(), _js_helper.JavaScriptIndexingBehavior];
@@ -73731,11 +73731,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
     get [dartx.onAddTrack]() {
       return html$.TextTrackList.addTrackEvent.forTarget(this);
@@ -73789,11 +73789,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.end](index) {
-      return this.end(index);
+    [dartx.end](...args) {
+      return this.end.apply(this, args);
     }
-    [dartx.start](index) {
-      return this.start(index);
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
   };
   dart.setSignature(html$.TimeRanges, {
@@ -74016,8 +74016,8 @@
     get [dartx.touches]() {
       return this.touches;
     }
-    [_initTouchEvent](touches, targetTouches, changedTouches, type, view, unused1, unused2, unused3, unused4, ctrlKey, altKey, shiftKey, metaKey) {
-      return this.initTouchEvent(touches, targetTouches, changedTouches, type, view, unused1, unused2, unused3, unused4, ctrlKey, altKey, shiftKey, metaKey);
+    [_initTouchEvent](...args) {
+      return this.initTouchEvent.apply(this, args);
     }
     static get supported() {
       return html_common.Device.isEventTypeSupported('TouchEvent');
@@ -74100,8 +74100,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.TouchList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfTouch()];
@@ -74211,8 +74211,8 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.TrackDefaultList, {
@@ -74448,26 +74448,26 @@
     get [dartx.whatToShow]() {
       return this.whatToShow;
     }
-    [dartx.firstChild]() {
-      return this.firstChild();
+    [dartx.firstChild](...args) {
+      return this.firstChild.apply(this, args);
     }
-    [dartx.lastChild]() {
-      return this.lastChild();
+    [dartx.lastChild](...args) {
+      return this.lastChild.apply(this, args);
     }
-    [dartx.nextNode]() {
-      return this.nextNode();
+    [dartx.nextNode](...args) {
+      return this.nextNode.apply(this, args);
     }
-    [dartx.nextSibling]() {
-      return this.nextSibling();
+    [dartx.nextSibling](...args) {
+      return this.nextSibling.apply(this, args);
     }
-    [dartx.parentNode]() {
-      return this.parentNode();
+    [dartx.parentNode](...args) {
+      return this.parentNode.apply(this, args);
     }
-    [dartx.previousNode]() {
-      return this.previousNode();
+    [dartx.previousNode](...args) {
+      return this.previousNode.apply(this, args);
     }
-    [dartx.previousSibling]() {
-      return this.previousSibling();
+    [dartx.previousSibling](...args) {
+      return this.previousSibling.apply(this, args);
     }
   };
   dart.setSignature(html$.TreeWalker, {
@@ -75177,14 +75177,14 @@
     set [dartx.width](value) {
       this.width = value;
     }
-    [dartx.getVideoPlaybackQuality]() {
-      return this.getVideoPlaybackQuality();
+    [dartx.getVideoPlaybackQuality](...args) {
+      return this.getVideoPlaybackQuality.apply(this, args);
     }
-    [dartx.enterFullscreen]() {
-      return this.webkitEnterFullscreen();
+    [dartx.enterFullscreen](...args) {
+      return this.webkitEnterFullscreen.apply(this, args);
     }
-    [dartx.exitFullscreen]() {
-      return this.webkitExitFullscreen();
+    [dartx.exitFullscreen](...args) {
+      return this.webkitExitFullscreen.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.VideoElement, 'created');
@@ -75301,11 +75301,11 @@
     get [dartx.selectedIndex]() {
       return this.selectedIndex;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.VideoTrackList.changeEvent.forTarget(this);
@@ -75400,8 +75400,8 @@
     set [dartx.vertical](value) {
       this.vertical = value;
     }
-    [dartx.getCueAsHtml]() {
-      return this.getCueAsHTML();
+    [dartx.getCueAsHtml](...args) {
+      return this.getCueAsHTML.apply(this, args);
     }
   };
   dart.setSignature(html$.VttCue, {
@@ -75529,11 +75529,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.getRegionById](id) {
-      return this.getRegionById(id);
+    [dartx.getRegionById](...args) {
+      return this.getRegionById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.VttRegionList, {
@@ -75604,23 +75604,23 @@
     get [dartx.url]() {
       return this.url;
     }
-    [dartx.close](code, reason) {
-      return this.close(code, reason);
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data) {
-      return this.send(data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendBlob](data) {
-      return this.send(data);
+    [dartx.sendBlob](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendByteBuffer](data) {
-      return this.send(data);
+    [dartx.sendByteBuffer](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendString](data) {
-      return this.send(data);
+    [dartx.sendString](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendTypedData](data) {
-      return this.send(data);
+    [dartx.sendTypedData](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onClose]() {
       return html$.WebSocket.closeEvent.forTarget(this);
@@ -75791,14 +75791,14 @@
     get [_hasInitMouseScrollEvent]() {
       return !!this.initMouseScrollEvent;
     }
-    [_initMouseScrollEvent](type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget, axis) {
-      return this.initMouseScrollEvent(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget, axis);
+    [_initMouseScrollEvent](...args) {
+      return this.initMouseScrollEvent.apply(this, args);
     }
     get [_hasInitWheelEvent]() {
       return !!this.initWheelEvent;
     }
-    [_initWheelEvent](eventType, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, button, relatedTarget, modifiersList, deltaX, deltaY, deltaZ, deltaMode) {
-      return this.initWheelEvent(eventType, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, button, relatedTarget, modifiersList, deltaX, deltaY, deltaZ, deltaMode);
+    [_initWheelEvent](...args) {
+      return this.initWheelEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.WheelEvent, {
@@ -76060,11 +76060,11 @@
       this[_ensureRequestAnimationFrame]();
       this[_cancelAnimationFrame](id);
     }
-    [_requestAnimationFrame](callback) {
-      return this.requestAnimationFrame(callback);
+    [_requestAnimationFrame](...args) {
+      return this.requestAnimationFrame.apply(this, args);
     }
-    [_cancelAnimationFrame](id) {
-      return this.cancelAnimationFrame(id);
+    [_cancelAnimationFrame](...args) {
+      return this.cancelAnimationFrame.apply(this, args);
     }
     [_ensureRequestAnimationFrame]() {
       if (!!(this.requestAnimationFrame && this.cancelAnimationFrame)) return;
@@ -76257,20 +76257,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [__getter___1](index) {
-      return this.__getter__(index);
+    [__getter___1](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__getter___2](name) {
-      return this.__getter__(name);
+    [__getter___2](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.alert](message) {
-      return this.alert(message);
+    [dartx.alert](...args) {
+      return this.alert.apply(this, args);
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.confirm](message) {
-      return this.confirm(message);
+    [dartx.confirm](...args) {
+      return this.confirm.apply(this, args);
     }
     [dartx.fetch](input, init) {
       if (init === void 0) init = null;
@@ -76280,35 +76280,35 @@
       }
       return this[_fetch_2](input);
     }
-    [_fetch_1](input, init) {
-      return this.fetch(input, init);
+    [_fetch_1](...args) {
+      return this.fetch.apply(this, args);
     }
-    [_fetch_2](input) {
-      return this.fetch(input);
+    [_fetch_2](...args) {
+      return this.fetch.apply(this, args);
     }
-    [dartx.find](string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog) {
-      return this.find(string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog);
+    [dartx.find](...args) {
+      return this.find.apply(this, args);
     }
-    [_getComputedStyle](elt, pseudoElt) {
-      return this.getComputedStyle(elt, pseudoElt);
+    [_getComputedStyle](...args) {
+      return this.getComputedStyle.apply(this, args);
     }
-    [dartx.getMatchedCssRules](element, pseudoElement) {
-      return this.getMatchedCSSRules(element, pseudoElement);
+    [dartx.getMatchedCssRules](...args) {
+      return this.getMatchedCSSRules.apply(this, args);
     }
-    [dartx.getSelection]() {
-      return this.getSelection();
+    [dartx.getSelection](...args) {
+      return this.getSelection.apply(this, args);
     }
-    [dartx.matchMedia](query) {
-      return this.matchMedia(query);
+    [dartx.matchMedia](...args) {
+      return this.matchMedia.apply(this, args);
     }
-    [dartx.moveBy](x, y) {
-      return this.moveBy(x, y);
+    [dartx.moveBy](...args) {
+      return this.moveBy.apply(this, args);
     }
-    [_moveTo](x, y) {
-      return this.moveTo(x, y);
+    [_moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.openDatabase](name, version, displayName, estimatedSize, creationCallback) {
-      return this.openDatabase(name, version, displayName, estimatedSize, creationCallback);
+    [dartx.openDatabase](...args) {
+      return this.openDatabase.apply(this, args);
     }
     [dartx.postMessage](message, targetOrigin, transfer) {
       if (transfer === void 0) transfer = null;
@@ -76321,20 +76321,20 @@
       this[_postMessage_2](message_1, targetOrigin);
       return;
     }
-    [_postMessage_1](message, targetOrigin, transfer) {
-      return this.postMessage(message, targetOrigin, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message, targetOrigin) {
-      return this.postMessage(message, targetOrigin);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.print]() {
-      return this.print();
+    [dartx.print](...args) {
+      return this.print.apply(this, args);
     }
-    [dartx.resizeBy](x, y) {
-      return this.resizeBy(x, y);
+    [dartx.resizeBy](...args) {
+      return this.resizeBy.apply(this, args);
     }
-    [dartx.resizeTo](x, y) {
-      return this.resizeTo(x, y);
+    [dartx.resizeTo](...args) {
+      return this.resizeTo.apply(this, args);
     }
     [dartx.scroll](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76364,20 +76364,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scroll_1]() {
-      return this.scroll();
+    [_scroll_1](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_2](options) {
-      return this.scroll(options);
+    [_scroll_2](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_3](x, y) {
-      return this.scroll(x, y);
+    [_scroll_3](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_4](x, y) {
-      return this.scroll(x, y);
+    [_scroll_4](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_5](x, y, scrollOptions) {
-      return this.scroll(x, y, scrollOptions);
+    [_scroll_5](...args) {
+      return this.scroll.apply(this, args);
     }
     [dartx.scrollBy](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76407,20 +76407,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollBy_1]() {
-      return this.scrollBy();
+    [_scrollBy_1](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_2](options) {
-      return this.scrollBy(options);
+    [_scrollBy_2](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_3](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_3](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_4](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_4](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_5](x, y, scrollOptions) {
-      return this.scrollBy(x, y, scrollOptions);
+    [_scrollBy_5](...args) {
+      return this.scrollBy.apply(this, args);
     }
     [dartx.scrollTo](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76450,26 +76450,26 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollTo_1]() {
-      return this.scrollTo();
+    [_scrollTo_1](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_2](options) {
-      return this.scrollTo(options);
+    [_scrollTo_2](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_3](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_3](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_4](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_4](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_5](x, y, scrollOptions) {
-      return this.scrollTo(x, y, scrollOptions);
+    [_scrollTo_5](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
-    [__requestFileSystem](type, size, successCallback, errorCallback) {
-      return this.webkitRequestFileSystem(type, size, successCallback, errorCallback);
+    [__requestFileSystem](...args) {
+      return this.webkitRequestFileSystem.apply(this, args);
     }
     [_requestFileSystem](type, size) {
       let completer = CompleterOfFileSystem().new();
@@ -76480,8 +76480,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_resolveLocalFileSystemUrl](url, successCallback, errorCallback) {
-      return this.webkitResolveLocalFileSystemURL(url, successCallback, errorCallback);
+    [_resolveLocalFileSystemUrl](...args) {
+      return this.webkitResolveLocalFileSystemURL.apply(this, args);
     }
     [dartx.resolveLocalFileSystemUrl](url) {
       let completer = CompleterOfEntry().new();
@@ -76492,29 +76492,29 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.atob](atob) {
-      return this.atob(atob);
+    [dartx.atob](...args) {
+      return this.atob.apply(this, args);
     }
-    [dartx.btoa](btoa) {
-      return this.btoa(btoa);
+    [dartx.btoa](...args) {
+      return this.btoa.apply(this, args);
     }
-    [_setInterval_String](handler, timeout, arguments$) {
-      return this.setInterval(handler, timeout, arguments$);
+    [_setInterval_String](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout_String](handler, timeout, arguments$) {
-      return this.setTimeout(handler, timeout, arguments$);
+    [_setTimeout_String](...args) {
+      return this.setTimeout.apply(this, args);
     }
-    [_clearInterval](handle) {
-      return this.clearInterval(handle);
+    [_clearInterval](...args) {
+      return this.clearInterval.apply(this, args);
     }
-    [_clearTimeout](handle) {
-      return this.clearTimeout(handle);
+    [_clearTimeout](...args) {
+      return this.clearTimeout.apply(this, args);
     }
-    [_setInterval](handler, timeout) {
-      return this.setInterval(handler, timeout);
+    [_setInterval](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout](handler, timeout) {
-      return this.setTimeout(handler, timeout);
+    [_setTimeout](...args) {
+      return this.setTimeout.apply(this, args);
     }
     get [dartx.onContentLoaded]() {
       return html$.Window.contentLoadedEvent.forTarget(this);
@@ -77228,8 +77228,8 @@
     get [dartx.visibilityState]() {
       return this.visibilityState;
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
   };
   dart.setSignature(html$.WindowClient, {
@@ -77359,14 +77359,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.terminate]() {
-      return this.terminate();
+    [dartx.terminate](...args) {
+      return this.terminate.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.Worker.errorEvent.forTarget(this);
@@ -77437,35 +77437,35 @@
     get [dartx.memory]() {
       return this.memory;
     }
-    [dartx.clearMarks](markName) {
-      return this.clearMarks(markName);
+    [dartx.clearMarks](...args) {
+      return this.clearMarks.apply(this, args);
     }
-    [dartx.clearMeasures](measureName) {
-      return this.clearMeasures(measureName);
+    [dartx.clearMeasures](...args) {
+      return this.clearMeasures.apply(this, args);
     }
-    [dartx.getEntries]() {
-      return this.getEntries();
+    [dartx.getEntries](...args) {
+      return this.getEntries.apply(this, args);
     }
-    [dartx.getEntriesByName](name, entryType) {
-      return this.getEntriesByName(name, entryType);
+    [dartx.getEntriesByName](...args) {
+      return this.getEntriesByName.apply(this, args);
     }
-    [dartx.getEntriesByType](entryType) {
-      return this.getEntriesByType(entryType);
+    [dartx.getEntriesByType](...args) {
+      return this.getEntriesByType.apply(this, args);
     }
-    [dartx.mark](markName) {
-      return this.mark(markName);
+    [dartx.mark](...args) {
+      return this.mark.apply(this, args);
     }
-    [dartx.measure](measureName, startMark, endMark) {
-      return this.measure(measureName, startMark, endMark);
+    [dartx.measure](...args) {
+      return this.measure.apply(this, args);
     }
-    [dartx.now]() {
-      return this.now();
+    [dartx.now](...args) {
+      return this.now.apply(this, args);
     }
-    [dartx.clearResourceTimings]() {
-      return this.webkitClearResourceTimings();
+    [dartx.clearResourceTimings](...args) {
+      return this.webkitClearResourceTimings.apply(this, args);
     }
-    [dartx.setResourceTimingBufferSize](maxSize) {
-      return this.webkitSetResourceTimingBufferSize(maxSize);
+    [dartx.setResourceTimingBufferSize](...args) {
+      return this.webkitSetResourceTimingBufferSize.apply(this, args);
     }
   };
   dart.setSignature(html$.WorkerPerformance, {
@@ -77500,14 +77500,14 @@
     static _create_1() {
       return new XPathEvaluator();
     }
-    [dartx.createExpression](expression, resolver) {
-      return this.createExpression(expression, resolver);
+    [dartx.createExpression](...args) {
+      return this.createExpression.apply(this, args);
     }
-    [dartx.createNSResolver](nodeResolver) {
-      return this.createNSResolver(nodeResolver);
+    [dartx.createNSResolver](...args) {
+      return this.createNSResolver.apply(this, args);
     }
-    [dartx.evaluate](expression, contextNode, resolver, type, inResult) {
-      return this.evaluate(expression, contextNode, resolver, type, inResult);
+    [dartx.evaluate](...args) {
+      return this.evaluate.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathEvaluator, {
@@ -77531,8 +77531,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.evaluate](contextNode, type, inResult) {
-      return this.evaluate(contextNode, type, inResult);
+    [dartx.evaluate](...args) {
+      return this.evaluate.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathExpression, {
@@ -77547,8 +77547,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.lookupNamespaceUri](prefix) {
-      return this.lookupNamespaceURI(prefix);
+    [dartx.lookupNamespaceUri](...args) {
+      return this.lookupNamespaceURI.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathNSResolver, {
@@ -77592,11 +77592,11 @@
     get [dartx.stringValue]() {
       return this.stringValue;
     }
-    [dartx.iterateNext]() {
-      return this.iterateNext();
+    [dartx.iterateNext](...args) {
+      return this.iterateNext.apply(this, args);
     }
-    [dartx.snapshotItem](index) {
-      return this.snapshotItem(index);
+    [dartx.snapshotItem](...args) {
+      return this.snapshotItem.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathResult, {
@@ -77660,8 +77660,8 @@
     static _create_1() {
       return new XMLSerializer();
     }
-    [dartx.serializeToString](root) {
-      return this.serializeToString(root);
+    [dartx.serializeToString](...args) {
+      return this.serializeToString.apply(this, args);
     }
   };
   dart.setSignature(html$.XmlSerializer, {
@@ -77697,29 +77697,29 @@
     static get supported() {
       return !!window.XSLTProcessor;
     }
-    [dartx.clearParameters]() {
-      return this.clearParameters();
+    [dartx.clearParameters](...args) {
+      return this.clearParameters.apply(this, args);
     }
-    [dartx.getParameter](namespaceURI, localName) {
-      return this.getParameter(namespaceURI, localName);
+    [dartx.getParameter](...args) {
+      return this.getParameter.apply(this, args);
     }
-    [dartx.importStylesheet](style) {
-      return this.importStylesheet(style);
+    [dartx.importStylesheet](...args) {
+      return this.importStylesheet.apply(this, args);
     }
-    [dartx.removeParameter](namespaceURI, localName) {
-      return this.removeParameter(namespaceURI, localName);
+    [dartx.removeParameter](...args) {
+      return this.removeParameter.apply(this, args);
     }
-    [dartx.reset]() {
-      return this.reset();
+    [dartx.reset](...args) {
+      return this.reset.apply(this, args);
     }
-    [dartx.setParameter](namespaceURI, localName, value) {
-      return this.setParameter(namespaceURI, localName, value);
+    [dartx.setParameter](...args) {
+      return this.setParameter.apply(this, args);
     }
-    [dartx.transformToDocument](source) {
-      return this.transformToDocument(source);
+    [dartx.transformToDocument](...args) {
+      return this.transformToDocument.apply(this, args);
     }
-    [dartx.transformToFragment](source, output) {
-      return this.transformToFragment(source, output);
+    [dartx.transformToFragment](...args) {
+      return this.transformToFragment.apply(this, args);
     }
   };
   dart.setSignature(html$.XsltProcessor, {
@@ -77984,11 +77984,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._ClientRectList[dart.implements] = () => [ListOfRectangleOfnum()];
@@ -78064,8 +78064,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._CssRuleList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfCssRule()];
@@ -78317,8 +78317,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._GamepadList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfGamepad()];
@@ -78343,8 +78343,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$._HTMLAllCollection, {
@@ -78508,26 +78508,26 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getNamedItem](name) {
-      return this.getNamedItem(name);
+    [dartx.getNamedItem](...args) {
+      return this.getNamedItem.apply(this, args);
     }
-    [dartx.getNamedItemNS](namespaceURI, localName) {
-      return this.getNamedItemNS(namespaceURI, localName);
+    [dartx.getNamedItemNS](...args) {
+      return this.getNamedItemNS.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.removeNamedItem](name) {
-      return this.removeNamedItem(name);
+    [dartx.removeNamedItem](...args) {
+      return this.removeNamedItem.apply(this, args);
     }
-    [dartx.removeNamedItemNS](namespaceURI, localName) {
-      return this.removeNamedItemNS(namespaceURI, localName);
+    [dartx.removeNamedItemNS](...args) {
+      return this.removeNamedItemNS.apply(this, args);
     }
-    [dartx.setNamedItem](attr) {
-      return this.setNamedItem(attr);
+    [dartx.setNamedItem](...args) {
+      return this.setNamedItem.apply(this, args);
     }
-    [dartx.setNamedItemNS](attr) {
-      return this.setNamedItemNS(attr);
+    [dartx.setNamedItemNS](...args) {
+      return this.setNamedItemNS.apply(this, args);
     }
   };
   html$._NamedNodeMap[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -78609,8 +78609,8 @@
     get [dartx.url]() {
       return this.url;
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
   };
   dart.setSignature(html$._Request, {
@@ -78736,8 +78736,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._SpeechRecognitionResultList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSpeechRecognitionResult()];
@@ -78811,11 +78811,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](name) {
-      return this.__getter__(name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._StyleSheetList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfStyleSheet()];
@@ -84007,11 +84007,11 @@
     get [dartx.viewportElement]() {
       return this.viewportElement;
     }
-    [dartx.blur]() {
-      return this.blur();
+    [dartx.blur](...args) {
+      return this.blur.apply(this, args);
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
     get [dartx.onAbort]() {
       return svg$.SvgElement.abortEvent.forElement(this);
@@ -84440,17 +84440,17 @@
     get [dartx.transform]() {
       return this.transform;
     }
-    [dartx.getBBox]() {
-      return this.getBBox();
+    [dartx.getBBox](...args) {
+      return this.getBBox.apply(this, args);
     }
-    [dartx.getCtm]() {
-      return this.getCTM();
+    [dartx.getCtm](...args) {
+      return this.getCTM.apply(this, args);
     }
-    [dartx.getScreenCtm]() {
-      return this.getScreenCTM();
+    [dartx.getScreenCtm](...args) {
+      return this.getScreenCTM.apply(this, args);
     }
-    [dartx.getTransformToElement](element) {
-      return this.getTransformToElement(element);
+    [dartx.getTransformToElement](...args) {
+      return this.getTransformToElement.apply(this, args);
     }
     get [dartx.requiredExtensions]() {
       return this.requiredExtensions;
@@ -84461,8 +84461,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.GraphicsElement, 'created');
@@ -84559,11 +84559,11 @@
     set [dartx.valueInSpecifiedUnits](value) {
       this.valueInSpecifiedUnits = value;
     }
-    [dartx.convertToSpecifiedUnits](unitType) {
-      return this.convertToSpecifiedUnits(unitType);
+    [dartx.convertToSpecifiedUnits](...args) {
+      return this.convertToSpecifiedUnits.apply(this, args);
     }
-    [dartx.newValueSpecifiedUnits](unitType, valueInSpecifiedUnits) {
-      return this.newValueSpecifiedUnits(unitType, valueInSpecifiedUnits);
+    [dartx.newValueSpecifiedUnits](...args) {
+      return this.newValueSpecifiedUnits.apply(this, args);
     }
   };
   dart.setSignature(svg$.Angle, {
@@ -84623,26 +84623,26 @@
     get [dartx.targetElement]() {
       return this.targetElement;
     }
-    [dartx.beginElement]() {
-      return this.beginElement();
+    [dartx.beginElement](...args) {
+      return this.beginElement.apply(this, args);
     }
-    [dartx.beginElementAt](offset) {
-      return this.beginElementAt(offset);
+    [dartx.beginElementAt](...args) {
+      return this.beginElementAt.apply(this, args);
     }
-    [dartx.endElement]() {
-      return this.endElement();
+    [dartx.endElement](...args) {
+      return this.endElement.apply(this, args);
     }
-    [dartx.endElementAt](offset) {
-      return this.endElementAt(offset);
+    [dartx.endElementAt](...args) {
+      return this.endElementAt.apply(this, args);
     }
-    [dartx.getCurrentTime]() {
-      return this.getCurrentTime();
+    [dartx.getCurrentTime](...args) {
+      return this.getCurrentTime.apply(this, args);
     }
-    [dartx.getSimpleDuration]() {
-      return this.getSimpleDuration();
+    [dartx.getSimpleDuration](...args) {
+      return this.getSimpleDuration.apply(this, args);
     }
-    [dartx.getStartTime]() {
-      return this.getStartTime();
+    [dartx.getStartTime](...args) {
+      return this.getStartTime.apply(this, args);
     }
     get [dartx.requiredExtensions]() {
       return this.requiredExtensions;
@@ -84653,8 +84653,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.AnimationElement, 'created');
@@ -85057,11 +85057,11 @@
     created() {
       super.created();
     }
-    [dartx.isPointInFill](point) {
-      return this.isPointInFill(point);
+    [dartx.isPointInFill](...args) {
+      return this.isPointInFill.apply(this, args);
     }
-    [dartx.isPointInStroke](point) {
-      return this.isPointInStroke(point);
+    [dartx.isPointInStroke](...args) {
+      return this.isPointInStroke.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.GeometryElement, 'created');
@@ -86187,8 +86187,8 @@
     get [dartx.stdDeviationY]() {
       return this.stdDeviationY;
     }
-    [dartx.setStdDeviation](stdDeviationX, stdDeviationY) {
-      return this.setStdDeviation(stdDeviationX, stdDeviationY);
+    [dartx.setStdDeviation](...args) {
+      return this.setStdDeviation.apply(this, args);
     }
     get [dartx.height]() {
       return this.height;
@@ -87273,11 +87273,11 @@
     set [dartx.valueInSpecifiedUnits](value) {
       this.valueInSpecifiedUnits = value;
     }
-    [dartx.convertToSpecifiedUnits](unitType) {
-      return this.convertToSpecifiedUnits(unitType);
+    [dartx.convertToSpecifiedUnits](...args) {
+      return this.convertToSpecifiedUnits.apply(this, args);
     }
-    [dartx.newValueSpecifiedUnits](unitType, valueInSpecifiedUnits) {
-      return this.newValueSpecifiedUnits(unitType, valueInSpecifiedUnits);
+    [dartx.newValueSpecifiedUnits](...args) {
+      return this.newValueSpecifiedUnits.apply(this, args);
     }
   };
   dart.setSignature(svg$.Length, {
@@ -87382,29 +87382,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.LengthList[dart.implements] = () => [ListOfLength()];
@@ -87636,11 +87636,11 @@
     get [dartx.refY]() {
       return this.refY;
     }
-    [dartx.setOrientToAngle](angle) {
-      return this.setOrientToAngle(angle);
+    [dartx.setOrientToAngle](...args) {
+      return this.setOrientToAngle.apply(this, args);
     }
-    [dartx.setOrientToAuto]() {
-      return this.setOrientToAuto();
+    [dartx.setOrientToAuto](...args) {
+      return this.setOrientToAuto.apply(this, args);
     }
     get [dartx.preserveAspectRatio]() {
       return this.preserveAspectRatio;
@@ -87746,8 +87746,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.MaskElement, 'created');
@@ -87831,38 +87831,38 @@
     set [dartx.f](value) {
       this.f = value;
     }
-    [dartx.flipX]() {
-      return this.flipX();
+    [dartx.flipX](...args) {
+      return this.flipX.apply(this, args);
     }
-    [dartx.flipY]() {
-      return this.flipY();
+    [dartx.flipY](...args) {
+      return this.flipY.apply(this, args);
     }
-    [dartx.inverse]() {
-      return this.inverse();
+    [dartx.inverse](...args) {
+      return this.inverse.apply(this, args);
     }
-    [dartx.multiply](secondMatrix) {
-      return this.multiply(secondMatrix);
+    [dartx.multiply](...args) {
+      return this.multiply.apply(this, args);
     }
-    [dartx.rotate](angle) {
-      return this.rotate(angle);
+    [dartx.rotate](...args) {
+      return this.rotate.apply(this, args);
     }
-    [dartx.rotateFromVector](x, y) {
-      return this.rotateFromVector(x, y);
+    [dartx.rotateFromVector](...args) {
+      return this.rotateFromVector.apply(this, args);
     }
-    [dartx.scale](scaleFactor) {
-      return this.scale(scaleFactor);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scaleNonUniform](scaleFactorX, scaleFactorY) {
-      return this.scaleNonUniform(scaleFactorX, scaleFactorY);
+    [dartx.scaleNonUniform](...args) {
+      return this.scaleNonUniform.apply(this, args);
     }
-    [dartx.skewX](angle) {
-      return this.skewX(angle);
+    [dartx.skewX](...args) {
+      return this.skewX.apply(this, args);
     }
-    [dartx.skewY](angle) {
-      return this.skewY(angle);
+    [dartx.skewY](...args) {
+      return this.skewY.apply(this, args);
     }
-    [dartx.translate](x, y) {
-      return this.translate(x, y);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
   };
   dart.setSignature(svg$.Matrix, {
@@ -87988,29 +87988,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.NumberList[dart.implements] = () => [ListOfNumber()];
@@ -88097,71 +88097,71 @@
     get [dartx.pathSegList]() {
       return this.pathSegList;
     }
-    [dartx.createSvgPathSegArcAbs](x, y, r1, r2, angle, largeArcFlag, sweepFlag) {
-      return this.createSVGPathSegArcAbs(x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+    [dartx.createSvgPathSegArcAbs](...args) {
+      return this.createSVGPathSegArcAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegArcRel](x, y, r1, r2, angle, largeArcFlag, sweepFlag) {
-      return this.createSVGPathSegArcRel(x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+    [dartx.createSvgPathSegArcRel](...args) {
+      return this.createSVGPathSegArcRel.apply(this, args);
     }
-    [dartx.createSvgPathSegClosePath]() {
-      return this.createSVGPathSegClosePath();
+    [dartx.createSvgPathSegClosePath](...args) {
+      return this.createSVGPathSegClosePath.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicAbs](x, y, x1, y1, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicAbs(x, y, x1, y1, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicAbs](...args) {
+      return this.createSVGPathSegCurvetoCubicAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicRel](x, y, x1, y1, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicRel(x, y, x1, y1, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicRel](...args) {
+      return this.createSVGPathSegCurvetoCubicRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicSmoothAbs](x, y, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicSmoothAbs(x, y, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicSmoothAbs](...args) {
+      return this.createSVGPathSegCurvetoCubicSmoothAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicSmoothRel](x, y, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicSmoothRel(x, y, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicSmoothRel](...args) {
+      return this.createSVGPathSegCurvetoCubicSmoothRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticAbs](x, y, x1, y1) {
-      return this.createSVGPathSegCurvetoQuadraticAbs(x, y, x1, y1);
+    [dartx.createSvgPathSegCurvetoQuadraticAbs](...args) {
+      return this.createSVGPathSegCurvetoQuadraticAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticRel](x, y, x1, y1) {
-      return this.createSVGPathSegCurvetoQuadraticRel(x, y, x1, y1);
+    [dartx.createSvgPathSegCurvetoQuadraticRel](...args) {
+      return this.createSVGPathSegCurvetoQuadraticRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticSmoothAbs](x, y) {
-      return this.createSVGPathSegCurvetoQuadraticSmoothAbs(x, y);
+    [dartx.createSvgPathSegCurvetoQuadraticSmoothAbs](...args) {
+      return this.createSVGPathSegCurvetoQuadraticSmoothAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticSmoothRel](x, y) {
-      return this.createSVGPathSegCurvetoQuadraticSmoothRel(x, y);
+    [dartx.createSvgPathSegCurvetoQuadraticSmoothRel](...args) {
+      return this.createSVGPathSegCurvetoQuadraticSmoothRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoAbs](x, y) {
-      return this.createSVGPathSegLinetoAbs(x, y);
+    [dartx.createSvgPathSegLinetoAbs](...args) {
+      return this.createSVGPathSegLinetoAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoHorizontalAbs](x) {
-      return this.createSVGPathSegLinetoHorizontalAbs(x);
+    [dartx.createSvgPathSegLinetoHorizontalAbs](...args) {
+      return this.createSVGPathSegLinetoHorizontalAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoHorizontalRel](x) {
-      return this.createSVGPathSegLinetoHorizontalRel(x);
+    [dartx.createSvgPathSegLinetoHorizontalRel](...args) {
+      return this.createSVGPathSegLinetoHorizontalRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoRel](x, y) {
-      return this.createSVGPathSegLinetoRel(x, y);
+    [dartx.createSvgPathSegLinetoRel](...args) {
+      return this.createSVGPathSegLinetoRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoVerticalAbs](y) {
-      return this.createSVGPathSegLinetoVerticalAbs(y);
+    [dartx.createSvgPathSegLinetoVerticalAbs](...args) {
+      return this.createSVGPathSegLinetoVerticalAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoVerticalRel](y) {
-      return this.createSVGPathSegLinetoVerticalRel(y);
+    [dartx.createSvgPathSegLinetoVerticalRel](...args) {
+      return this.createSVGPathSegLinetoVerticalRel.apply(this, args);
     }
-    [dartx.createSvgPathSegMovetoAbs](x, y) {
-      return this.createSVGPathSegMovetoAbs(x, y);
+    [dartx.createSvgPathSegMovetoAbs](...args) {
+      return this.createSVGPathSegMovetoAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegMovetoRel](x, y) {
-      return this.createSVGPathSegMovetoRel(x, y);
+    [dartx.createSvgPathSegMovetoRel](...args) {
+      return this.createSVGPathSegMovetoRel.apply(this, args);
     }
-    [dartx.getPathSegAtLength](distance) {
-      return this.getPathSegAtLength(distance);
+    [dartx.getPathSegAtLength](...args) {
+      return this.getPathSegAtLength.apply(this, args);
     }
-    [dartx.getPointAtLength](distance) {
-      return this.getPointAtLength(distance);
+    [dartx.getPointAtLength](...args) {
+      return this.getPointAtLength.apply(this, args);
     }
-    [dartx.getTotalLength]() {
-      return this.getTotalLength();
+    [dartx.getTotalLength](...args) {
+      return this.getTotalLength.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.PathElement, 'created');
@@ -88973,29 +88973,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.PathSegList[dart.implements] = () => [ListOfPathSeg()];
@@ -89156,8 +89156,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
     get [dartx.href]() {
       return this.href;
@@ -89210,8 +89210,8 @@
     set [dartx.y](value) {
       this.y = value;
     }
-    [dartx.matrixTransform](matrix) {
-      return this.matrixTransform(matrix);
+    [dartx.matrixTransform](...args) {
+      return this.matrixTransform.apply(this, args);
     }
   };
   dart.setSignature(svg$.Point, {
@@ -89244,29 +89244,29 @@
     get [dartx.numberOfItems]() {
       return this.numberOfItems;
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   dart.setSignature(svg$.PointList, {
@@ -89738,29 +89738,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](item, index) {
-      return this.insertItemBefore(item, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.StringList[dart.implements] = () => [ListOfString()];
@@ -89987,74 +89987,74 @@
     get [dartx.y]() {
       return this.y;
     }
-    [dartx.animationsPaused]() {
-      return this.animationsPaused();
+    [dartx.animationsPaused](...args) {
+      return this.animationsPaused.apply(this, args);
     }
-    [dartx.checkEnclosure](element, rect) {
-      return this.checkEnclosure(element, rect);
+    [dartx.checkEnclosure](...args) {
+      return this.checkEnclosure.apply(this, args);
     }
-    [dartx.checkIntersection](element, rect) {
-      return this.checkIntersection(element, rect);
+    [dartx.checkIntersection](...args) {
+      return this.checkIntersection.apply(this, args);
     }
-    [dartx.createSvgAngle]() {
-      return this.createSVGAngle();
+    [dartx.createSvgAngle](...args) {
+      return this.createSVGAngle.apply(this, args);
     }
-    [dartx.createSvgLength]() {
-      return this.createSVGLength();
+    [dartx.createSvgLength](...args) {
+      return this.createSVGLength.apply(this, args);
     }
-    [dartx.createSvgMatrix]() {
-      return this.createSVGMatrix();
+    [dartx.createSvgMatrix](...args) {
+      return this.createSVGMatrix.apply(this, args);
     }
-    [dartx.createSvgNumber]() {
-      return this.createSVGNumber();
+    [dartx.createSvgNumber](...args) {
+      return this.createSVGNumber.apply(this, args);
     }
-    [dartx.createSvgPoint]() {
-      return this.createSVGPoint();
+    [dartx.createSvgPoint](...args) {
+      return this.createSVGPoint.apply(this, args);
     }
-    [dartx.createSvgRect]() {
-      return this.createSVGRect();
+    [dartx.createSvgRect](...args) {
+      return this.createSVGRect.apply(this, args);
     }
-    [dartx.createSvgTransform]() {
-      return this.createSVGTransform();
+    [dartx.createSvgTransform](...args) {
+      return this.createSVGTransform.apply(this, args);
     }
-    [dartx.createSvgTransformFromMatrix](matrix) {
-      return this.createSVGTransformFromMatrix(matrix);
+    [dartx.createSvgTransformFromMatrix](...args) {
+      return this.createSVGTransformFromMatrix.apply(this, args);
     }
-    [dartx.deselectAll]() {
-      return this.deselectAll();
+    [dartx.deselectAll](...args) {
+      return this.deselectAll.apply(this, args);
     }
-    [dartx.forceRedraw]() {
-      return this.forceRedraw();
+    [dartx.forceRedraw](...args) {
+      return this.forceRedraw.apply(this, args);
     }
-    [dartx.getCurrentTime]() {
-      return this.getCurrentTime();
+    [dartx.getCurrentTime](...args) {
+      return this.getCurrentTime.apply(this, args);
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
-    [dartx.getEnclosureList](rect, referenceElement) {
-      return this.getEnclosureList(rect, referenceElement);
+    [dartx.getEnclosureList](...args) {
+      return this.getEnclosureList.apply(this, args);
     }
-    [dartx.getIntersectionList](rect, referenceElement) {
-      return this.getIntersectionList(rect, referenceElement);
+    [dartx.getIntersectionList](...args) {
+      return this.getIntersectionList.apply(this, args);
     }
-    [dartx.pauseAnimations]() {
-      return this.pauseAnimations();
+    [dartx.pauseAnimations](...args) {
+      return this.pauseAnimations.apply(this, args);
     }
-    [dartx.setCurrentTime](seconds) {
-      return this.setCurrentTime(seconds);
+    [dartx.setCurrentTime](...args) {
+      return this.setCurrentTime.apply(this, args);
     }
-    [dartx.suspendRedraw](maxWaitMilliseconds) {
-      return this.suspendRedraw(maxWaitMilliseconds);
+    [dartx.suspendRedraw](...args) {
+      return this.suspendRedraw.apply(this, args);
     }
-    [dartx.unpauseAnimations]() {
-      return this.unpauseAnimations();
+    [dartx.unpauseAnimations](...args) {
+      return this.unpauseAnimations.apply(this, args);
     }
-    [dartx.unsuspendRedraw](suspendHandleId) {
-      return this.unsuspendRedraw(suspendHandleId);
+    [dartx.unsuspendRedraw](...args) {
+      return this.unsuspendRedraw.apply(this, args);
     }
-    [dartx.unsuspendRedrawAll]() {
-      return this.unsuspendRedrawAll();
+    [dartx.unsuspendRedrawAll](...args) {
+      return this.unsuspendRedrawAll.apply(this, args);
     }
     get [dartx.preserveAspectRatio]() {
       return this.preserveAspectRatio;
@@ -90207,32 +90207,32 @@
     get [dartx.textLength]() {
       return this.textLength;
     }
-    [dartx.getCharNumAtPosition](point) {
-      return this.getCharNumAtPosition(point);
+    [dartx.getCharNumAtPosition](...args) {
+      return this.getCharNumAtPosition.apply(this, args);
     }
-    [dartx.getComputedTextLength]() {
-      return this.getComputedTextLength();
+    [dartx.getComputedTextLength](...args) {
+      return this.getComputedTextLength.apply(this, args);
     }
-    [dartx.getEndPositionOfChar](charnum) {
-      return this.getEndPositionOfChar(charnum);
+    [dartx.getEndPositionOfChar](...args) {
+      return this.getEndPositionOfChar.apply(this, args);
     }
-    [dartx.getExtentOfChar](charnum) {
-      return this.getExtentOfChar(charnum);
+    [dartx.getExtentOfChar](...args) {
+      return this.getExtentOfChar.apply(this, args);
     }
-    [dartx.getNumberOfChars]() {
-      return this.getNumberOfChars();
+    [dartx.getNumberOfChars](...args) {
+      return this.getNumberOfChars.apply(this, args);
     }
-    [dartx.getRotationOfChar](charnum) {
-      return this.getRotationOfChar(charnum);
+    [dartx.getRotationOfChar](...args) {
+      return this.getRotationOfChar.apply(this, args);
     }
-    [dartx.getStartPositionOfChar](charnum) {
-      return this.getStartPositionOfChar(charnum);
+    [dartx.getStartPositionOfChar](...args) {
+      return this.getStartPositionOfChar.apply(this, args);
     }
-    [dartx.getSubStringLength](charnum, nchars) {
-      return this.getSubStringLength(charnum, nchars);
+    [dartx.getSubStringLength](...args) {
+      return this.getSubStringLength.apply(this, args);
     }
-    [dartx.selectSubString](charnum, nchars) {
-      return this.selectSubString(charnum, nchars);
+    [dartx.selectSubString](...args) {
+      return this.selectSubString.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.TextContentElement, 'created');
@@ -90499,23 +90499,23 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.setMatrix](matrix) {
-      return this.setMatrix(matrix);
+    [dartx.setMatrix](...args) {
+      return this.setMatrix.apply(this, args);
     }
-    [dartx.setRotate](angle, cx, cy) {
-      return this.setRotate(angle, cx, cy);
+    [dartx.setRotate](...args) {
+      return this.setRotate.apply(this, args);
     }
-    [dartx.setScale](sx, sy) {
-      return this.setScale(sx, sy);
+    [dartx.setScale](...args) {
+      return this.setScale.apply(this, args);
     }
-    [dartx.setSkewX](angle) {
-      return this.setSkewX(angle);
+    [dartx.setSkewX](...args) {
+      return this.setSkewX.apply(this, args);
     }
-    [dartx.setSkewY](angle) {
-      return this.setSkewY(angle);
+    [dartx.setSkewY](...args) {
+      return this.setSkewY.apply(this, args);
     }
-    [dartx.setTranslate](tx, ty) {
-      return this.setTranslate(tx, ty);
+    [dartx.setTranslate](...args) {
+      return this.setTranslate.apply(this, args);
     }
   };
   dart.setSignature(svg$.Transform, {
@@ -90616,35 +90616,35 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.consolidate]() {
-      return this.consolidate();
+    [dartx.consolidate](...args) {
+      return this.consolidate.apply(this, args);
     }
-    [dartx.createSvgTransformFromMatrix](matrix) {
-      return this.createSVGTransformFromMatrix(matrix);
+    [dartx.createSvgTransformFromMatrix](...args) {
+      return this.createSVGTransformFromMatrix.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.TransformList[dart.implements] = () => [ListOfTransform()];
@@ -91052,11 +91052,11 @@
     get [dartx.numberOfOutputs]() {
       return this.numberOfOutputs;
     }
-    [_connect](destination, output, input) {
-      return this.connect(destination, output, input);
+    [_connect](...args) {
+      return this.connect.apply(this, args);
     }
-    [dartx.disconnect](output) {
-      return this.disconnect(output);
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
     [dartx.connectNode](destination, output, input) {
       if (output === void 0) output = 0;
@@ -91128,17 +91128,17 @@
     set [dartx.smoothingTimeConstant](value) {
       this.smoothingTimeConstant = value;
     }
-    [dartx.getByteFrequencyData](array) {
-      return this.getByteFrequencyData(array);
+    [dartx.getByteFrequencyData](...args) {
+      return this.getByteFrequencyData.apply(this, args);
     }
-    [dartx.getByteTimeDomainData](array) {
-      return this.getByteTimeDomainData(array);
+    [dartx.getByteTimeDomainData](...args) {
+      return this.getByteTimeDomainData.apply(this, args);
     }
-    [dartx.getFloatFrequencyData](array) {
-      return this.getFloatFrequencyData(array);
+    [dartx.getFloatFrequencyData](...args) {
+      return this.getFloatFrequencyData.apply(this, args);
     }
-    [dartx.getFloatTimeDomainData](array) {
-      return this.getFloatTimeDomainData(array);
+    [dartx.getFloatTimeDomainData](...args) {
+      return this.getFloatTimeDomainData.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AnalyserNode, {
@@ -91182,8 +91182,8 @@
     get [dartx.sampleRate]() {
       return this.sampleRate;
     }
-    [dartx.getChannelData](channelIndex) {
-      return this.getChannelData(channelIndex);
+    [dartx.getChannelData](...args) {
+      return this.getChannelData.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioBuffer, {
@@ -91345,59 +91345,59 @@
     get [dartx.sampleRate]() {
       return this.sampleRate;
     }
-    [dartx.createAnalyser]() {
-      return this.createAnalyser();
+    [dartx.createAnalyser](...args) {
+      return this.createAnalyser.apply(this, args);
     }
-    [dartx.createBiquadFilter]() {
-      return this.createBiquadFilter();
+    [dartx.createBiquadFilter](...args) {
+      return this.createBiquadFilter.apply(this, args);
     }
-    [dartx.createBuffer](numberOfChannels, numberOfFrames, sampleRate) {
-      return this.createBuffer(numberOfChannels, numberOfFrames, sampleRate);
+    [dartx.createBuffer](...args) {
+      return this.createBuffer.apply(this, args);
     }
-    [dartx.createBufferSource]() {
-      return this.createBufferSource();
+    [dartx.createBufferSource](...args) {
+      return this.createBufferSource.apply(this, args);
     }
-    [dartx.createChannelMerger](numberOfInputs) {
-      return this.createChannelMerger(numberOfInputs);
+    [dartx.createChannelMerger](...args) {
+      return this.createChannelMerger.apply(this, args);
     }
-    [dartx.createChannelSplitter](numberOfOutputs) {
-      return this.createChannelSplitter(numberOfOutputs);
+    [dartx.createChannelSplitter](...args) {
+      return this.createChannelSplitter.apply(this, args);
     }
-    [dartx.createConvolver]() {
-      return this.createConvolver();
+    [dartx.createConvolver](...args) {
+      return this.createConvolver.apply(this, args);
     }
-    [dartx.createDelay](maxDelayTime) {
-      return this.createDelay(maxDelayTime);
+    [dartx.createDelay](...args) {
+      return this.createDelay.apply(this, args);
     }
-    [dartx.createDynamicsCompressor]() {
-      return this.createDynamicsCompressor();
+    [dartx.createDynamicsCompressor](...args) {
+      return this.createDynamicsCompressor.apply(this, args);
     }
-    [dartx.createMediaElementSource](mediaElement) {
-      return this.createMediaElementSource(mediaElement);
+    [dartx.createMediaElementSource](...args) {
+      return this.createMediaElementSource.apply(this, args);
     }
-    [dartx.createMediaStreamDestination]() {
-      return this.createMediaStreamDestination();
+    [dartx.createMediaStreamDestination](...args) {
+      return this.createMediaStreamDestination.apply(this, args);
     }
-    [dartx.createMediaStreamSource](mediaStream) {
-      return this.createMediaStreamSource(mediaStream);
+    [dartx.createMediaStreamSource](...args) {
+      return this.createMediaStreamSource.apply(this, args);
     }
-    [dartx.createOscillator]() {
-      return this.createOscillator();
+    [dartx.createOscillator](...args) {
+      return this.createOscillator.apply(this, args);
     }
-    [dartx.createPanner]() {
-      return this.createPanner();
+    [dartx.createPanner](...args) {
+      return this.createPanner.apply(this, args);
     }
-    [dartx.createPeriodicWave](real, imag) {
-      return this.createPeriodicWave(real, imag);
+    [dartx.createPeriodicWave](...args) {
+      return this.createPeriodicWave.apply(this, args);
     }
-    [dartx.createWaveShaper]() {
-      return this.createWaveShaper();
+    [dartx.createWaveShaper](...args) {
+      return this.createWaveShaper.apply(this, args);
     }
-    [_decodeAudioData](audioData, successCallback, errorCallback) {
-      return this.decodeAudioData(audioData, successCallback, errorCallback);
+    [_decodeAudioData](...args) {
+      return this.decodeAudioData.apply(this, args);
     }
-    [dartx.startRendering]() {
-      return this.startRendering();
+    [dartx.startRendering](...args) {
+      return this.startRendering.apply(this, args);
     }
     get [dartx.onComplete]() {
       return web_audio.AudioContext.completeEvent.forTarget(this);
@@ -91518,14 +91518,14 @@
     set [dartx.speedOfSound](value) {
       this.speedOfSound = value;
     }
-    [dartx.setOrientation](x, y, z, xUp, yUp, zUp) {
-      return this.setOrientation(x, y, z, xUp, yUp, zUp);
+    [dartx.setOrientation](...args) {
+      return this.setOrientation.apply(this, args);
     }
-    [dartx.setPosition](x, y, z) {
-      return this.setPosition(x, y, z);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
-    [dartx.setVelocity](x, y, z) {
-      return this.setVelocity(x, y, z);
+    [dartx.setVelocity](...args) {
+      return this.setVelocity.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioListener, {
@@ -91564,23 +91564,23 @@
     set [dartx.value](value) {
       this.value = value;
     }
-    [dartx.cancelScheduledValues](startTime) {
-      return this.cancelScheduledValues(startTime);
+    [dartx.cancelScheduledValues](...args) {
+      return this.cancelScheduledValues.apply(this, args);
     }
-    [dartx.exponentialRampToValueAtTime](value, time) {
-      return this.exponentialRampToValueAtTime(value, time);
+    [dartx.exponentialRampToValueAtTime](...args) {
+      return this.exponentialRampToValueAtTime.apply(this, args);
     }
-    [dartx.linearRampToValueAtTime](value, time) {
-      return this.linearRampToValueAtTime(value, time);
+    [dartx.linearRampToValueAtTime](...args) {
+      return this.linearRampToValueAtTime.apply(this, args);
     }
-    [dartx.setTargetAtTime](target, time, timeConstant) {
-      return this.setTargetAtTime(target, time, timeConstant);
+    [dartx.setTargetAtTime](...args) {
+      return this.setTargetAtTime.apply(this, args);
     }
-    [dartx.setValueAtTime](value, time) {
-      return this.setValueAtTime(value, time);
+    [dartx.setValueAtTime](...args) {
+      return this.setValueAtTime.apply(this, args);
     }
-    [dartx.setValueCurveAtTime](values, time, duration) {
-      return this.setValueCurveAtTime(values, time, duration);
+    [dartx.setValueCurveAtTime](...args) {
+      return this.setValueCurveAtTime.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioParam, {
@@ -91657,8 +91657,8 @@
     set [dartx.type](value) {
       this.type = value;
     }
-    [dartx.getFrequencyResponse](frequencyHz, magResponse, phaseResponse) {
-      return this.getFrequencyResponse(frequencyHz, magResponse, phaseResponse);
+    [dartx.getFrequencyResponse](...args) {
+      return this.getFrequencyResponse.apply(this, args);
     }
   };
   dart.setSignature(web_audio.BiquadFilterNode, {
@@ -91909,20 +91909,20 @@
     set [dartx.type](value) {
       this.type = value;
     }
-    [dartx.noteOff](when) {
-      return this.noteOff(when);
+    [dartx.noteOff](...args) {
+      return this.noteOff.apply(this, args);
     }
-    [dartx.noteOn](when) {
-      return this.noteOn(when);
+    [dartx.noteOn](...args) {
+      return this.noteOn.apply(this, args);
     }
-    [dartx.setPeriodicWave](periodicWave) {
-      return this.setPeriodicWave(periodicWave);
+    [dartx.setPeriodicWave](...args) {
+      return this.setPeriodicWave.apply(this, args);
     }
-    [dartx.start](when) {
-      return this.start(when);
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
-    [dartx.stop](when) {
-      return this.stop(when);
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onEnded]() {
       return web_audio.OscillatorNode.endedEvent.forTarget(this);
@@ -92013,14 +92013,14 @@
     set [dartx.rolloffFactor](value) {
       this.rolloffFactor = value;
     }
-    [dartx.setOrientation](x, y, z) {
-      return this.setOrientation(x, y, z);
+    [dartx.setOrientation](...args) {
+      return this.setOrientation.apply(this, args);
     }
-    [dartx.setPosition](x, y, z) {
-      return this.setPosition(x, y, z);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
-    [dartx.setVelocity](x, y, z) {
-      return this.setVelocity(x, y, z);
+    [dartx.setVelocity](...args) {
+      return this.setVelocity.apply(this, args);
     }
   };
   dart.setSignature(web_audio.PannerNode, {
@@ -92065,8 +92065,8 @@
     get [dartx.bufferSize]() {
       return this.bufferSize;
     }
-    [dartx.setEventListener](eventListener) {
-      return this.setEventListener(eventListener);
+    [dartx.setEventListener](...args) {
+      return this.setEventListener.apply(this, args);
     }
     get [dartx.onAudioProcess]() {
       return web_audio.ScriptProcessorNode.audioProcessEvent.forTarget(this);
@@ -92297,323 +92297,323 @@
     get [dartx.drawingBufferWidth]() {
       return this.drawingBufferWidth;
     }
-    [dartx.activeTexture](texture) {
-      return this.activeTexture(texture);
+    [dartx.activeTexture](...args) {
+      return this.activeTexture.apply(this, args);
     }
-    [dartx.attachShader](program, shader) {
-      return this.attachShader(program, shader);
+    [dartx.attachShader](...args) {
+      return this.attachShader.apply(this, args);
     }
-    [dartx.bindAttribLocation](program, index, name) {
-      return this.bindAttribLocation(program, index, name);
+    [dartx.bindAttribLocation](...args) {
+      return this.bindAttribLocation.apply(this, args);
     }
-    [dartx.bindBuffer](target, buffer) {
-      return this.bindBuffer(target, buffer);
+    [dartx.bindBuffer](...args) {
+      return this.bindBuffer.apply(this, args);
     }
-    [dartx.bindFramebuffer](target, framebuffer) {
-      return this.bindFramebuffer(target, framebuffer);
+    [dartx.bindFramebuffer](...args) {
+      return this.bindFramebuffer.apply(this, args);
     }
-    [dartx.bindRenderbuffer](target, renderbuffer) {
-      return this.bindRenderbuffer(target, renderbuffer);
+    [dartx.bindRenderbuffer](...args) {
+      return this.bindRenderbuffer.apply(this, args);
     }
-    [dartx.bindTexture](target, texture) {
-      return this.bindTexture(target, texture);
+    [dartx.bindTexture](...args) {
+      return this.bindTexture.apply(this, args);
     }
-    [dartx.blendColor](red, green, blue, alpha) {
-      return this.blendColor(red, green, blue, alpha);
+    [dartx.blendColor](...args) {
+      return this.blendColor.apply(this, args);
     }
-    [dartx.blendEquation](mode) {
-      return this.blendEquation(mode);
+    [dartx.blendEquation](...args) {
+      return this.blendEquation.apply(this, args);
     }
-    [dartx.blendEquationSeparate](modeRGB, modeAlpha) {
-      return this.blendEquationSeparate(modeRGB, modeAlpha);
+    [dartx.blendEquationSeparate](...args) {
+      return this.blendEquationSeparate.apply(this, args);
     }
-    [dartx.blendFunc](sfactor, dfactor) {
-      return this.blendFunc(sfactor, dfactor);
+    [dartx.blendFunc](...args) {
+      return this.blendFunc.apply(this, args);
     }
-    [dartx.blendFuncSeparate](srcRGB, dstRGB, srcAlpha, dstAlpha) {
-      return this.blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
+    [dartx.blendFuncSeparate](...args) {
+      return this.blendFuncSeparate.apply(this, args);
     }
-    [dartx.bufferByteData](target, data, usage) {
-      return this.bufferData(target, data, usage);
+    [dartx.bufferByteData](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferData](target, data_OR_size, usage) {
-      return this.bufferData(target, data_OR_size, usage);
+    [dartx.bufferData](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferDataTyped](target, data, usage) {
-      return this.bufferData(target, data, usage);
+    [dartx.bufferDataTyped](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferSubByteData](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubByteData](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.bufferSubData](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubData](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.bufferSubDataTyped](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubDataTyped](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.checkFramebufferStatus](target) {
-      return this.checkFramebufferStatus(target);
+    [dartx.checkFramebufferStatus](...args) {
+      return this.checkFramebufferStatus.apply(this, args);
     }
-    [dartx.clear](mask) {
-      return this.clear(mask);
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.clearColor](red, green, blue, alpha) {
-      return this.clearColor(red, green, blue, alpha);
+    [dartx.clearColor](...args) {
+      return this.clearColor.apply(this, args);
     }
-    [dartx.clearDepth](depth) {
-      return this.clearDepth(depth);
+    [dartx.clearDepth](...args) {
+      return this.clearDepth.apply(this, args);
     }
-    [dartx.clearStencil](s) {
-      return this.clearStencil(s);
+    [dartx.clearStencil](...args) {
+      return this.clearStencil.apply(this, args);
     }
-    [dartx.colorMask](red, green, blue, alpha) {
-      return this.colorMask(red, green, blue, alpha);
+    [dartx.colorMask](...args) {
+      return this.colorMask.apply(this, args);
     }
-    [dartx.compileShader](shader) {
-      return this.compileShader(shader);
+    [dartx.compileShader](...args) {
+      return this.compileShader.apply(this, args);
     }
-    [dartx.compressedTexImage2D](target, level, internalformat, width, height, border, data) {
-      return this.compressedTexImage2D(target, level, internalformat, width, height, border, data);
+    [dartx.compressedTexImage2D](...args) {
+      return this.compressedTexImage2D.apply(this, args);
     }
-    [dartx.compressedTexSubImage2D](target, level, xoffset, yoffset, width, height, format, data) {
-      return this.compressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, data);
+    [dartx.compressedTexSubImage2D](...args) {
+      return this.compressedTexSubImage2D.apply(this, args);
     }
-    [dartx.copyTexImage2D](target, level, internalformat, x, y, width, height, border) {
-      return this.copyTexImage2D(target, level, internalformat, x, y, width, height, border);
+    [dartx.copyTexImage2D](...args) {
+      return this.copyTexImage2D.apply(this, args);
     }
-    [dartx.copyTexSubImage2D](target, level, xoffset, yoffset, x, y, width, height) {
-      return this.copyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+    [dartx.copyTexSubImage2D](...args) {
+      return this.copyTexSubImage2D.apply(this, args);
     }
-    [dartx.createBuffer]() {
-      return this.createBuffer();
+    [dartx.createBuffer](...args) {
+      return this.createBuffer.apply(this, args);
     }
-    [dartx.createFramebuffer]() {
-      return this.createFramebuffer();
+    [dartx.createFramebuffer](...args) {
+      return this.createFramebuffer.apply(this, args);
     }
-    [dartx.createProgram]() {
-      return this.createProgram();
+    [dartx.createProgram](...args) {
+      return this.createProgram.apply(this, args);
     }
-    [dartx.createRenderbuffer]() {
-      return this.createRenderbuffer();
+    [dartx.createRenderbuffer](...args) {
+      return this.createRenderbuffer.apply(this, args);
     }
-    [dartx.createShader](type) {
-      return this.createShader(type);
+    [dartx.createShader](...args) {
+      return this.createShader.apply(this, args);
     }
-    [dartx.createTexture]() {
-      return this.createTexture();
+    [dartx.createTexture](...args) {
+      return this.createTexture.apply(this, args);
     }
-    [dartx.cullFace](mode) {
-      return this.cullFace(mode);
+    [dartx.cullFace](...args) {
+      return this.cullFace.apply(this, args);
     }
-    [dartx.deleteBuffer](buffer) {
-      return this.deleteBuffer(buffer);
+    [dartx.deleteBuffer](...args) {
+      return this.deleteBuffer.apply(this, args);
     }
-    [dartx.deleteFramebuffer](framebuffer) {
-      return this.deleteFramebuffer(framebuffer);
+    [dartx.deleteFramebuffer](...args) {
+      return this.deleteFramebuffer.apply(this, args);
     }
-    [dartx.deleteProgram](program) {
-      return this.deleteProgram(program);
+    [dartx.deleteProgram](...args) {
+      return this.deleteProgram.apply(this, args);
     }
-    [dartx.deleteRenderbuffer](renderbuffer) {
-      return this.deleteRenderbuffer(renderbuffer);
+    [dartx.deleteRenderbuffer](...args) {
+      return this.deleteRenderbuffer.apply(this, args);
     }
-    [dartx.deleteShader](shader) {
-      return this.deleteShader(shader);
+    [dartx.deleteShader](...args) {
+      return this.deleteShader.apply(this, args);
     }
-    [dartx.deleteTexture](texture) {
-      return this.deleteTexture(texture);
+    [dartx.deleteTexture](...args) {
+      return this.deleteTexture.apply(this, args);
     }
-    [dartx.depthFunc](func) {
-      return this.depthFunc(func);
+    [dartx.depthFunc](...args) {
+      return this.depthFunc.apply(this, args);
     }
-    [dartx.depthMask](flag) {
-      return this.depthMask(flag);
+    [dartx.depthMask](...args) {
+      return this.depthMask.apply(this, args);
     }
-    [dartx.depthRange](zNear, zFar) {
-      return this.depthRange(zNear, zFar);
+    [dartx.depthRange](...args) {
+      return this.depthRange.apply(this, args);
     }
-    [dartx.detachShader](program, shader) {
-      return this.detachShader(program, shader);
+    [dartx.detachShader](...args) {
+      return this.detachShader.apply(this, args);
     }
-    [dartx.disable](cap) {
-      return this.disable(cap);
+    [dartx.disable](...args) {
+      return this.disable.apply(this, args);
     }
-    [dartx.disableVertexAttribArray](index) {
-      return this.disableVertexAttribArray(index);
+    [dartx.disableVertexAttribArray](...args) {
+      return this.disableVertexAttribArray.apply(this, args);
     }
-    [dartx.drawArrays](mode, first, count) {
-      return this.drawArrays(mode, first, count);
+    [dartx.drawArrays](...args) {
+      return this.drawArrays.apply(this, args);
     }
-    [dartx.drawElements](mode, count, type, offset) {
-      return this.drawElements(mode, count, type, offset);
+    [dartx.drawElements](...args) {
+      return this.drawElements.apply(this, args);
     }
-    [dartx.enable](cap) {
-      return this.enable(cap);
+    [dartx.enable](...args) {
+      return this.enable.apply(this, args);
     }
-    [dartx.enableVertexAttribArray](index) {
-      return this.enableVertexAttribArray(index);
+    [dartx.enableVertexAttribArray](...args) {
+      return this.enableVertexAttribArray.apply(this, args);
     }
-    [dartx.finish]() {
-      return this.finish();
+    [dartx.finish](...args) {
+      return this.finish.apply(this, args);
     }
-    [dartx.flush]() {
-      return this.flush();
+    [dartx.flush](...args) {
+      return this.flush.apply(this, args);
     }
-    [dartx.framebufferRenderbuffer](target, attachment, renderbuffertarget, renderbuffer) {
-      return this.framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+    [dartx.framebufferRenderbuffer](...args) {
+      return this.framebufferRenderbuffer.apply(this, args);
     }
-    [dartx.framebufferTexture2D](target, attachment, textarget, texture, level) {
-      return this.framebufferTexture2D(target, attachment, textarget, texture, level);
+    [dartx.framebufferTexture2D](...args) {
+      return this.framebufferTexture2D.apply(this, args);
     }
-    [dartx.frontFace](mode) {
-      return this.frontFace(mode);
+    [dartx.frontFace](...args) {
+      return this.frontFace.apply(this, args);
     }
-    [dartx.generateMipmap](target) {
-      return this.generateMipmap(target);
+    [dartx.generateMipmap](...args) {
+      return this.generateMipmap.apply(this, args);
     }
-    [dartx.getActiveAttrib](program, index) {
-      return this.getActiveAttrib(program, index);
+    [dartx.getActiveAttrib](...args) {
+      return this.getActiveAttrib.apply(this, args);
     }
-    [dartx.getActiveUniform](program, index) {
-      return this.getActiveUniform(program, index);
+    [dartx.getActiveUniform](...args) {
+      return this.getActiveUniform.apply(this, args);
     }
-    [dartx.getAttachedShaders](program) {
-      return this.getAttachedShaders(program);
+    [dartx.getAttachedShaders](...args) {
+      return this.getAttachedShaders.apply(this, args);
     }
-    [dartx.getAttribLocation](program, name) {
-      return this.getAttribLocation(program, name);
+    [dartx.getAttribLocation](...args) {
+      return this.getAttribLocation.apply(this, args);
     }
-    [dartx.getBufferParameter](target, pname) {
-      return this.getBufferParameter(target, pname);
+    [dartx.getBufferParameter](...args) {
+      return this.getBufferParameter.apply(this, args);
     }
     [dartx.getContextAttributes]() {
       return web_gl.ContextAttributes._check(html_common.convertNativeToDart_ContextAttributes(this[_getContextAttributes_1$]()));
     }
-    [_getContextAttributes_1$]() {
-      return this.getContextAttributes();
+    [_getContextAttributes_1$](...args) {
+      return this.getContextAttributes.apply(this, args);
     }
-    [dartx.getError]() {
-      return this.getError();
+    [dartx.getError](...args) {
+      return this.getError.apply(this, args);
     }
-    [dartx.getExtension](name) {
-      return this.getExtension(name);
+    [dartx.getExtension](...args) {
+      return this.getExtension.apply(this, args);
     }
-    [dartx.getFramebufferAttachmentParameter](target, attachment, pname) {
-      return this.getFramebufferAttachmentParameter(target, attachment, pname);
+    [dartx.getFramebufferAttachmentParameter](...args) {
+      return this.getFramebufferAttachmentParameter.apply(this, args);
     }
-    [dartx.getParameter](pname) {
-      return this.getParameter(pname);
+    [dartx.getParameter](...args) {
+      return this.getParameter.apply(this, args);
     }
-    [dartx.getProgramInfoLog](program) {
-      return this.getProgramInfoLog(program);
+    [dartx.getProgramInfoLog](...args) {
+      return this.getProgramInfoLog.apply(this, args);
     }
-    [dartx.getProgramParameter](program, pname) {
-      return this.getProgramParameter(program, pname);
+    [dartx.getProgramParameter](...args) {
+      return this.getProgramParameter.apply(this, args);
     }
-    [dartx.getRenderbufferParameter](target, pname) {
-      return this.getRenderbufferParameter(target, pname);
+    [dartx.getRenderbufferParameter](...args) {
+      return this.getRenderbufferParameter.apply(this, args);
     }
-    [dartx.getShaderInfoLog](shader) {
-      return this.getShaderInfoLog(shader);
+    [dartx.getShaderInfoLog](...args) {
+      return this.getShaderInfoLog.apply(this, args);
     }
-    [dartx.getShaderParameter](shader, pname) {
-      return this.getShaderParameter(shader, pname);
+    [dartx.getShaderParameter](...args) {
+      return this.getShaderParameter.apply(this, args);
     }
-    [dartx.getShaderPrecisionFormat](shadertype, precisiontype) {
-      return this.getShaderPrecisionFormat(shadertype, precisiontype);
+    [dartx.getShaderPrecisionFormat](...args) {
+      return this.getShaderPrecisionFormat.apply(this, args);
     }
-    [dartx.getShaderSource](shader) {
-      return this.getShaderSource(shader);
+    [dartx.getShaderSource](...args) {
+      return this.getShaderSource.apply(this, args);
     }
-    [dartx.getSupportedExtensions]() {
-      return this.getSupportedExtensions();
+    [dartx.getSupportedExtensions](...args) {
+      return this.getSupportedExtensions.apply(this, args);
     }
-    [dartx.getTexParameter](target, pname) {
-      return this.getTexParameter(target, pname);
+    [dartx.getTexParameter](...args) {
+      return this.getTexParameter.apply(this, args);
     }
-    [dartx.getUniform](program, location) {
-      return this.getUniform(program, location);
+    [dartx.getUniform](...args) {
+      return this.getUniform.apply(this, args);
     }
-    [dartx.getUniformLocation](program, name) {
-      return this.getUniformLocation(program, name);
+    [dartx.getUniformLocation](...args) {
+      return this.getUniformLocation.apply(this, args);
     }
-    [dartx.getVertexAttrib](index, pname) {
-      return this.getVertexAttrib(index, pname);
+    [dartx.getVertexAttrib](...args) {
+      return this.getVertexAttrib.apply(this, args);
     }
-    [dartx.getVertexAttribOffset](index, pname) {
-      return this.getVertexAttribOffset(index, pname);
+    [dartx.getVertexAttribOffset](...args) {
+      return this.getVertexAttribOffset.apply(this, args);
     }
-    [dartx.hint](target, mode) {
-      return this.hint(target, mode);
+    [dartx.hint](...args) {
+      return this.hint.apply(this, args);
     }
-    [dartx.isBuffer](buffer) {
-      return this.isBuffer(buffer);
+    [dartx.isBuffer](...args) {
+      return this.isBuffer.apply(this, args);
     }
-    [dartx.isContextLost]() {
-      return this.isContextLost();
+    [dartx.isContextLost](...args) {
+      return this.isContextLost.apply(this, args);
     }
-    [dartx.isEnabled](cap) {
-      return this.isEnabled(cap);
+    [dartx.isEnabled](...args) {
+      return this.isEnabled.apply(this, args);
     }
-    [dartx.isFramebuffer](framebuffer) {
-      return this.isFramebuffer(framebuffer);
+    [dartx.isFramebuffer](...args) {
+      return this.isFramebuffer.apply(this, args);
     }
-    [dartx.isProgram](program) {
-      return this.isProgram(program);
+    [dartx.isProgram](...args) {
+      return this.isProgram.apply(this, args);
     }
-    [dartx.isRenderbuffer](renderbuffer) {
-      return this.isRenderbuffer(renderbuffer);
+    [dartx.isRenderbuffer](...args) {
+      return this.isRenderbuffer.apply(this, args);
     }
-    [dartx.isShader](shader) {
-      return this.isShader(shader);
+    [dartx.isShader](...args) {
+      return this.isShader.apply(this, args);
     }
-    [dartx.isTexture](texture) {
-      return this.isTexture(texture);
+    [dartx.isTexture](...args) {
+      return this.isTexture.apply(this, args);
     }
-    [dartx.lineWidth](width) {
-      return this.lineWidth(width);
+    [dartx.lineWidth](...args) {
+      return this.lineWidth.apply(this, args);
     }
-    [dartx.linkProgram](program) {
-      return this.linkProgram(program);
+    [dartx.linkProgram](...args) {
+      return this.linkProgram.apply(this, args);
     }
-    [dartx.pixelStorei](pname, param) {
-      return this.pixelStorei(pname, param);
+    [dartx.pixelStorei](...args) {
+      return this.pixelStorei.apply(this, args);
     }
-    [dartx.polygonOffset](factor, units) {
-      return this.polygonOffset(factor, units);
+    [dartx.polygonOffset](...args) {
+      return this.polygonOffset.apply(this, args);
     }
-    [dartx.readPixels](x, y, width, height, format, type, pixels) {
-      return this.readPixels(x, y, width, height, format, type, pixels);
+    [dartx.readPixels](...args) {
+      return this.readPixels.apply(this, args);
     }
-    [dartx.renderbufferStorage](target, internalformat, width, height) {
-      return this.renderbufferStorage(target, internalformat, width, height);
+    [dartx.renderbufferStorage](...args) {
+      return this.renderbufferStorage.apply(this, args);
     }
-    [dartx.sampleCoverage](value, invert) {
-      return this.sampleCoverage(value, invert);
+    [dartx.sampleCoverage](...args) {
+      return this.sampleCoverage.apply(this, args);
     }
-    [dartx.scissor](x, y, width, height) {
-      return this.scissor(x, y, width, height);
+    [dartx.scissor](...args) {
+      return this.scissor.apply(this, args);
     }
-    [dartx.shaderSource](shader, string) {
-      return this.shaderSource(shader, string);
+    [dartx.shaderSource](...args) {
+      return this.shaderSource.apply(this, args);
     }
-    [dartx.stencilFunc](func, ref, mask) {
-      return this.stencilFunc(func, ref, mask);
+    [dartx.stencilFunc](...args) {
+      return this.stencilFunc.apply(this, args);
     }
-    [dartx.stencilFuncSeparate](face, func, ref, mask) {
-      return this.stencilFuncSeparate(face, func, ref, mask);
+    [dartx.stencilFuncSeparate](...args) {
+      return this.stencilFuncSeparate.apply(this, args);
     }
-    [dartx.stencilMask](mask) {
-      return this.stencilMask(mask);
+    [dartx.stencilMask](...args) {
+      return this.stencilMask.apply(this, args);
     }
-    [dartx.stencilMaskSeparate](face, mask) {
-      return this.stencilMaskSeparate(face, mask);
+    [dartx.stencilMaskSeparate](...args) {
+      return this.stencilMaskSeparate.apply(this, args);
     }
-    [dartx.stencilOp](fail, zfail, zpass) {
-      return this.stencilOp(fail, zfail, zpass);
+    [dartx.stencilOp](...args) {
+      return this.stencilOp.apply(this, args);
     }
-    [dartx.stencilOpSeparate](face, fail, zfail, zpass) {
-      return this.stencilOpSeparate(face, fail, zfail, zpass);
+    [dartx.stencilOpSeparate](...args) {
+      return this.stencilOpSeparate.apply(this, args);
     }
     [dartx.texImage2D](target, level, internalformat, format_OR_width, height_OR_type, border_OR_canvas_OR_image_OR_pixels_OR_video, format, type, pixels) {
       if (format === void 0) format = null;
@@ -92642,43 +92642,43 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_texImage2D_1](target, level, internalformat, width, height, border, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+    [_texImage2D_1](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_2](target, level, internalformat, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, format, type, pixels);
+    [_texImage2D_2](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_3](target, level, internalformat, format, type, image) {
-      return this.texImage2D(target, level, internalformat, format, type, image);
+    [_texImage2D_3](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_4](target, level, internalformat, format, type, canvas) {
-      return this.texImage2D(target, level, internalformat, format, type, canvas);
+    [_texImage2D_4](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_5](target, level, internalformat, format, type, video) {
-      return this.texImage2D(target, level, internalformat, format, type, video);
+    [_texImage2D_5](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DCanvas](target, level, internalformat, format, type, canvas) {
-      return this.texImage2D(target, level, internalformat, format, type, canvas);
+    [dartx.texImage2DCanvas](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DImage](target, level, internalformat, format, type, image) {
-      return this.texImage2D(target, level, internalformat, format, type, image);
+    [dartx.texImage2DImage](...args) {
+      return this.texImage2D.apply(this, args);
     }
     [dartx.texImage2DImageData](target, level, internalformat, format, type, pixels) {
       let pixels_1 = html_common.convertDartToNative_ImageData(pixels);
       this[_texImage2DImageData_1](target, level, internalformat, format, type, pixels_1);
       return;
     }
-    [_texImage2DImageData_1](target, level, internalformat, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, format, type, pixels);
+    [_texImage2DImageData_1](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DVideo](target, level, internalformat, format, type, video) {
-      return this.texImage2D(target, level, internalformat, format, type, video);
+    [dartx.texImage2DVideo](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texParameterf](target, pname, param) {
-      return this.texParameterf(target, pname, param);
+    [dartx.texParameterf](...args) {
+      return this.texParameterf.apply(this, args);
     }
-    [dartx.texParameteri](target, pname, param) {
-      return this.texParameteri(target, pname, param);
+    [dartx.texParameteri](...args) {
+      return this.texParameteri.apply(this, args);
     }
     [dartx.texSubImage2D](target, level, xoffset, yoffset, format_OR_width, height_OR_type, canvas_OR_format_OR_image_OR_pixels_OR_video, type, pixels) {
       if (type === void 0) type = null;
@@ -92706,142 +92706,142 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_texSubImage2D_1](target, level, xoffset, yoffset, width, height, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+    [_texSubImage2D_1](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_2](target, level, xoffset, yoffset, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, pixels);
+    [_texSubImage2D_2](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_3](target, level, xoffset, yoffset, format, type, image) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, image);
+    [_texSubImage2D_3](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_4](target, level, xoffset, yoffset, format, type, canvas) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, canvas);
+    [_texSubImage2D_4](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_5](target, level, xoffset, yoffset, format, type, video) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, video);
+    [_texSubImage2D_5](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DCanvas](target, level, xoffset, yoffset, format, type, canvas) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, canvas);
+    [dartx.texSubImage2DCanvas](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DImage](target, level, xoffset, yoffset, format, type, image) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, image);
+    [dartx.texSubImage2DImage](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
     [dartx.texSubImage2DImageData](target, level, xoffset, yoffset, format, type, pixels) {
       let pixels_1 = html_common.convertDartToNative_ImageData(pixels);
       this[_texSubImage2DImageData_1](target, level, xoffset, yoffset, format, type, pixels_1);
       return;
     }
-    [_texSubImage2DImageData_1](target, level, xoffset, yoffset, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, pixels);
+    [_texSubImage2DImageData_1](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DVideo](target, level, xoffset, yoffset, format, type, video) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, video);
+    [dartx.texSubImage2DVideo](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.uniform1f](location, x) {
-      return this.uniform1f(location, x);
+    [dartx.uniform1f](...args) {
+      return this.uniform1f.apply(this, args);
     }
-    [dartx.uniform1fv](location, v) {
-      return this.uniform1fv(location, v);
+    [dartx.uniform1fv](...args) {
+      return this.uniform1fv.apply(this, args);
     }
-    [dartx.uniform1i](location, x) {
-      return this.uniform1i(location, x);
+    [dartx.uniform1i](...args) {
+      return this.uniform1i.apply(this, args);
     }
-    [dartx.uniform1iv](location, v) {
-      return this.uniform1iv(location, v);
+    [dartx.uniform1iv](...args) {
+      return this.uniform1iv.apply(this, args);
     }
-    [dartx.uniform2f](location, x, y) {
-      return this.uniform2f(location, x, y);
+    [dartx.uniform2f](...args) {
+      return this.uniform2f.apply(this, args);
     }
-    [dartx.uniform2fv](location, v) {
-      return this.uniform2fv(location, v);
+    [dartx.uniform2fv](...args) {
+      return this.uniform2fv.apply(this, args);
     }
-    [dartx.uniform2i](location, x, y) {
-      return this.uniform2i(location, x, y);
+    [dartx.uniform2i](...args) {
+      return this.uniform2i.apply(this, args);
     }
-    [dartx.uniform2iv](location, v) {
-      return this.uniform2iv(location, v);
+    [dartx.uniform2iv](...args) {
+      return this.uniform2iv.apply(this, args);
     }
-    [dartx.uniform3f](location, x, y, z) {
-      return this.uniform3f(location, x, y, z);
+    [dartx.uniform3f](...args) {
+      return this.uniform3f.apply(this, args);
     }
-    [dartx.uniform3fv](location, v) {
-      return this.uniform3fv(location, v);
+    [dartx.uniform3fv](...args) {
+      return this.uniform3fv.apply(this, args);
     }
-    [dartx.uniform3i](location, x, y, z) {
-      return this.uniform3i(location, x, y, z);
+    [dartx.uniform3i](...args) {
+      return this.uniform3i.apply(this, args);
     }
-    [dartx.uniform3iv](location, v) {
-      return this.uniform3iv(location, v);
+    [dartx.uniform3iv](...args) {
+      return this.uniform3iv.apply(this, args);
     }
-    [dartx.uniform4f](location, x, y, z, w) {
-      return this.uniform4f(location, x, y, z, w);
+    [dartx.uniform4f](...args) {
+      return this.uniform4f.apply(this, args);
     }
-    [dartx.uniform4fv](location, v) {
-      return this.uniform4fv(location, v);
+    [dartx.uniform4fv](...args) {
+      return this.uniform4fv.apply(this, args);
     }
-    [dartx.uniform4i](location, x, y, z, w) {
-      return this.uniform4i(location, x, y, z, w);
+    [dartx.uniform4i](...args) {
+      return this.uniform4i.apply(this, args);
     }
-    [dartx.uniform4iv](location, v) {
-      return this.uniform4iv(location, v);
+    [dartx.uniform4iv](...args) {
+      return this.uniform4iv.apply(this, args);
     }
-    [dartx.uniformMatrix2fv](location, transpose, array) {
-      return this.uniformMatrix2fv(location, transpose, array);
+    [dartx.uniformMatrix2fv](...args) {
+      return this.uniformMatrix2fv.apply(this, args);
     }
-    [dartx.uniformMatrix3fv](location, transpose, array) {
-      return this.uniformMatrix3fv(location, transpose, array);
+    [dartx.uniformMatrix3fv](...args) {
+      return this.uniformMatrix3fv.apply(this, args);
     }
-    [dartx.uniformMatrix4fv](location, transpose, array) {
-      return this.uniformMatrix4fv(location, transpose, array);
+    [dartx.uniformMatrix4fv](...args) {
+      return this.uniformMatrix4fv.apply(this, args);
     }
-    [dartx.useProgram](program) {
-      return this.useProgram(program);
+    [dartx.useProgram](...args) {
+      return this.useProgram.apply(this, args);
     }
-    [dartx.validateProgram](program) {
-      return this.validateProgram(program);
+    [dartx.validateProgram](...args) {
+      return this.validateProgram.apply(this, args);
     }
-    [dartx.vertexAttrib1f](indx, x) {
-      return this.vertexAttrib1f(indx, x);
+    [dartx.vertexAttrib1f](...args) {
+      return this.vertexAttrib1f.apply(this, args);
     }
-    [dartx.vertexAttrib1fv](indx, values) {
-      return this.vertexAttrib1fv(indx, values);
+    [dartx.vertexAttrib1fv](...args) {
+      return this.vertexAttrib1fv.apply(this, args);
     }
-    [dartx.vertexAttrib2f](indx, x, y) {
-      return this.vertexAttrib2f(indx, x, y);
+    [dartx.vertexAttrib2f](...args) {
+      return this.vertexAttrib2f.apply(this, args);
     }
-    [dartx.vertexAttrib2fv](indx, values) {
-      return this.vertexAttrib2fv(indx, values);
+    [dartx.vertexAttrib2fv](...args) {
+      return this.vertexAttrib2fv.apply(this, args);
     }
-    [dartx.vertexAttrib3f](indx, x, y, z) {
-      return this.vertexAttrib3f(indx, x, y, z);
+    [dartx.vertexAttrib3f](...args) {
+      return this.vertexAttrib3f.apply(this, args);
     }
-    [dartx.vertexAttrib3fv](indx, values) {
-      return this.vertexAttrib3fv(indx, values);
+    [dartx.vertexAttrib3fv](...args) {
+      return this.vertexAttrib3fv.apply(this, args);
     }
-    [dartx.vertexAttrib4f](indx, x, y, z, w) {
-      return this.vertexAttrib4f(indx, x, y, z, w);
+    [dartx.vertexAttrib4f](...args) {
+      return this.vertexAttrib4f.apply(this, args);
     }
-    [dartx.vertexAttrib4fv](indx, values) {
-      return this.vertexAttrib4fv(indx, values);
+    [dartx.vertexAttrib4fv](...args) {
+      return this.vertexAttrib4fv.apply(this, args);
     }
-    [dartx.vertexAttribPointer](indx, size, type, normalized, stride, offset) {
-      return this.vertexAttribPointer(indx, size, type, normalized, stride, offset);
+    [dartx.vertexAttribPointer](...args) {
+      return this.vertexAttribPointer.apply(this, args);
     }
-    [dartx.viewport](x, y, width, height) {
-      return this.viewport(x, y, width, height);
+    [dartx.viewport](...args) {
+      return this.viewport.apply(this, args);
     }
-    [dartx.texImage2DUntyped](targetTexture, levelOfDetail, internalFormat, format, type, data) {
-      return this.texImage2D(targetTexture, levelOfDetail, internalFormat, format, type, data);
+    [dartx.texImage2DUntyped](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DTyped](targetTexture, levelOfDetail, internalFormat, width, height, border, format, type, data) {
-      return this.texImage2D(targetTexture, levelOfDetail, internalFormat, width, height, border, format, type, data);
+    [dartx.texImage2DTyped](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DUntyped](targetTexture, levelOfDetail, xOffset, yOffset, format, type, data) {
-      return this.texSubImage2D(targetTexture, levelOfDetail, xOffset, yOffset, format, type, data);
+    [dartx.texSubImage2DUntyped](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DTyped](targetTexture, levelOfDetail, xOffset, yOffset, width, height, border, format, type, data) {
-      return this.texSubImage2D(targetTexture, levelOfDetail, xOffset, yOffset, width, height, border, format, type, data);
+    [dartx.texSubImage2DTyped](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
   };
   web_gl.RenderingContext[dart.implements] = () => [html$.CanvasRenderingContext];
@@ -93962,14 +93962,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.drawArraysInstancedAngle](mode, first, count, primcount) {
-      return this.drawArraysInstancedANGLE(mode, first, count, primcount);
+    [dartx.drawArraysInstancedAngle](...args) {
+      return this.drawArraysInstancedANGLE.apply(this, args);
     }
-    [dartx.drawElementsInstancedAngle](mode, count, type, offset, primcount) {
-      return this.drawElementsInstancedANGLE(mode, count, type, offset, primcount);
+    [dartx.drawElementsInstancedAngle](...args) {
+      return this.drawElementsInstancedANGLE.apply(this, args);
     }
-    [dartx.vertexAttribDivisorAngle](index, divisor) {
-      return this.vertexAttribDivisorANGLE(index, divisor);
+    [dartx.vertexAttribDivisorAngle](...args) {
+      return this.vertexAttribDivisorANGLE.apply(this, args);
     }
   };
   dart.setSignature(web_gl.AngleInstancedArrays, {
@@ -94165,8 +94165,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getTranslatedShaderSource](shader) {
-      return this.getTranslatedShaderSource(shader);
+    [dartx.getTranslatedShaderSource](...args) {
+      return this.getTranslatedShaderSource.apply(this, args);
     }
   };
   dart.setSignature(web_gl.DebugShaders, {
@@ -94192,8 +94192,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.drawBuffersWebgl](buffers) {
-      return this.drawBuffersWEBGL(buffers);
+    [dartx.drawBuffersWebgl](...args) {
+      return this.drawBuffersWEBGL.apply(this, args);
     }
   };
   dart.setSignature(web_gl.DrawBuffers, {
@@ -94336,11 +94336,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.loseContext]() {
-      return this.loseContext();
+    [dartx.loseContext](...args) {
+      return this.loseContext.apply(this, args);
     }
-    [dartx.restoreContext]() {
-      return this.restoreContext();
+    [dartx.restoreContext](...args) {
+      return this.restoreContext.apply(this, args);
     }
   };
   dart.setSignature(web_gl.LoseContext, {
@@ -94409,17 +94409,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.bindVertexArray](arrayObject) {
-      return this.bindVertexArrayOES(arrayObject);
+    [dartx.bindVertexArray](...args) {
+      return this.bindVertexArrayOES.apply(this, args);
     }
-    [dartx.createVertexArray]() {
-      return this.createVertexArrayOES();
+    [dartx.createVertexArray](...args) {
+      return this.createVertexArrayOES.apply(this, args);
     }
-    [dartx.deleteVertexArray](arrayObject) {
-      return this.deleteVertexArrayOES(arrayObject);
+    [dartx.deleteVertexArray](...args) {
+      return this.deleteVertexArrayOES.apply(this, args);
     }
-    [dartx.isVertexArray](arrayObject) {
-      return this.isVertexArrayOES(arrayObject);
+    [dartx.isVertexArray](...args) {
+      return this.isVertexArrayOES.apply(this, args);
     }
   };
   dart.setSignature(web_gl.OesVertexArrayObject, {
@@ -94544,14 +94544,14 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.changeVersion](oldVersion, newVersion, callback, errorCallback, successCallback) {
-      return this.changeVersion(oldVersion, newVersion, callback, errorCallback, successCallback);
+    [dartx.changeVersion](...args) {
+      return this.changeVersion.apply(this, args);
     }
-    [dartx.readTransaction](callback, errorCallback, successCallback) {
-      return this.readTransaction(callback, errorCallback, successCallback);
+    [dartx.readTransaction](...args) {
+      return this.readTransaction.apply(this, args);
     }
-    [dartx.transaction](callback, errorCallback, successCallback) {
-      return this.transaction(callback, errorCallback, successCallback);
+    [dartx.transaction](...args) {
+      return this.transaction.apply(this, args);
     }
   };
   dart.setSignature(web_sql.SqlDatabase, {
@@ -94691,8 +94691,8 @@
     [dartx.item](index) {
       return html_common.convertNativeToDart_Dictionary(this[_item_1](index));
     }
-    [_item_1](index) {
-      return this.item(index);
+    [_item_1](...args) {
+      return this.item.apply(this, args);
     }
   };
   web_sql.SqlResultSetRowList[dart.implements] = () => [ListOfMap()];
@@ -94721,8 +94721,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.executeSql](sqlStatement, arguments$, callback, errorCallback) {
-      return this.executeSql(sqlStatement, arguments$, callback, errorCallback);
+    [dartx.executeSql](...args) {
+      return this.executeSql.apply(this, args);
     }
   };
   dart.setSignature(web_sql.SqlTransaction, {
diff --git a/pkg/dev_compiler/lib/js/common/dart_sdk.js b/pkg/dev_compiler/lib/js/common/dart_sdk.js
index 701109d..259b2e1 100644
--- a/pkg/dev_compiler/lib/js/common/dart_sdk.js
+++ b/pkg/dev_compiler/lib/js/common/dart_sdk.js
@@ -15609,113 +15609,113 @@
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getFloat32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getFloat32](byteOffset, littleEndian) {
-      return this.getFloat32(byteOffset, littleEndian);
+    [_getFloat32](...args) {
+      return this.getFloat32.apply(this, args);
     }
     [dartx.getFloat64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getFloat64](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getFloat64](byteOffset, littleEndian) {
-      return this.getFloat64(byteOffset, littleEndian);
+    [_getFloat64](...args) {
+      return this.getFloat64.apply(this, args);
     }
     [dartx.getInt16](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getInt16](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getInt16](byteOffset, littleEndian) {
-      return this.getInt16(byteOffset, littleEndian);
+    [_getInt16](...args) {
+      return this.getInt16.apply(this, args);
     }
     [dartx.getInt32](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getInt32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getInt32](byteOffset, littleEndian) {
-      return this.getInt32(byteOffset, littleEndian);
+    [_getInt32](...args) {
+      return this.getInt32.apply(this, args);
     }
     [dartx.getInt64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Int64 accessor not supported by dart2js.'));
     }
-    [dartx.getInt8](byteOffset) {
-      return this.getInt8(byteOffset);
+    [dartx.getInt8](...args) {
+      return this.getInt8.apply(this, args);
     }
     [dartx.getUint16](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getUint16](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getUint16](byteOffset, littleEndian) {
-      return this.getUint16(byteOffset, littleEndian);
+    [_getUint16](...args) {
+      return this.getUint16.apply(this, args);
     }
     [dartx.getUint32](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getUint32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getUint32](byteOffset, littleEndian) {
-      return this.getUint32(byteOffset, littleEndian);
+    [_getUint32](...args) {
+      return this.getUint32.apply(this, args);
     }
     [dartx.getUint64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Uint64 accessor not supported by dart2js.'));
     }
-    [dartx.getUint8](byteOffset) {
-      return this.getUint8(byteOffset);
+    [dartx.getUint8](...args) {
+      return this.getUint8.apply(this, args);
     }
     [dartx.setFloat32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setFloat32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setFloat32](byteOffset, value, littleEndian) {
-      return this.setFloat32(byteOffset, value, littleEndian);
+    [_setFloat32](...args) {
+      return this.setFloat32.apply(this, args);
     }
     [dartx.setFloat64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setFloat64](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setFloat64](byteOffset, value, littleEndian) {
-      return this.setFloat64(byteOffset, value, littleEndian);
+    [_setFloat64](...args) {
+      return this.setFloat64.apply(this, args);
     }
     [dartx.setInt16](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setInt16](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setInt16](byteOffset, value, littleEndian) {
-      return this.setInt16(byteOffset, value, littleEndian);
+    [_setInt16](...args) {
+      return this.setInt16.apply(this, args);
     }
     [dartx.setInt32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setInt32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setInt32](byteOffset, value, littleEndian) {
-      return this.setInt32(byteOffset, value, littleEndian);
+    [_setInt32](...args) {
+      return this.setInt32.apply(this, args);
     }
     [dartx.setInt64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Int64 accessor not supported by dart2js.'));
     }
-    [dartx.setInt8](byteOffset, value) {
-      return this.setInt8(byteOffset, value);
+    [dartx.setInt8](...args) {
+      return this.setInt8.apply(this, args);
     }
     [dartx.setUint16](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setUint16](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setUint16](byteOffset, value, littleEndian) {
-      return this.setUint16(byteOffset, value, littleEndian);
+    [_setUint16](...args) {
+      return this.setUint16.apply(this, args);
     }
     [dartx.setUint32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setUint32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setUint32](byteOffset, value, littleEndian) {
-      return this.setUint32(byteOffset, value, littleEndian);
+    [_setUint32](...args) {
+      return this.setUint32.apply(this, args);
     }
     [dartx.setUint64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Uint64 accessor not supported by dart2js.'));
     }
-    [dartx.setUint8](byteOffset, value) {
-      return this.setUint8(byteOffset, value);
+    [dartx.setUint8](...args) {
+      return this.setUint8.apply(this, args);
     }
     static _create1(arg) {
       return new DataView(new ArrayBuffer(arg));
@@ -38349,21 +38349,21 @@
     get [dartx.source]() {
       return this.source;
     }
-    [dartx.advance](count) {
-      return this.advance(count);
+    [dartx.advance](...args) {
+      return this.advance.apply(this, args);
     }
-    [dartx.continuePrimaryKey](key, primaryKey) {
-      return this.continuePrimaryKey(key, primaryKey);
+    [dartx.continuePrimaryKey](...args) {
+      return this.continuePrimaryKey.apply(this, args);
     }
-    [_delete]() {
-      return this.delete();
+    [_delete](...args) {
+      return this.delete.apply(this, args);
     }
     [_update](value) {
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_update_1](value_1);
     }
-    [_update_1](value) {
-      return this.update(value);
+    [_update_1](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.Cursor, {
@@ -38441,14 +38441,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_addEventListener](type, listener, capture) {
-      return this.addEventListener(type, listener, capture);
+    [_addEventListener](...args) {
+      return this.addEventListener.apply(this, args);
     }
-    [dartx.dispatchEvent](event) {
-      return this.dispatchEvent(event);
+    [dartx.dispatchEvent](...args) {
+      return this.dispatchEvent.apply(this, args);
     }
-    [_removeEventListener](type, listener, capture) {
-      return this.removeEventListener(type, listener, capture);
+    [_removeEventListener](...args) {
+      return this.removeEventListener.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.EventTarget, '_created');
@@ -38521,8 +38521,8 @@
       }
       return this[_transaction](storeNames, mode);
     }
-    [_transaction](stores, mode) {
-      return this.transaction(stores, mode);
+    [_transaction](...args) {
+      return this.transaction.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -38536,8 +38536,8 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [_createObjectStore](name, options) {
       if (options === void 0) options = null;
@@ -38547,14 +38547,14 @@
       }
       return this[_createObjectStore_2](name);
     }
-    [_createObjectStore_1](name, options) {
-      return this.createObjectStore(name, options);
+    [_createObjectStore_1](...args) {
+      return this.createObjectStore.apply(this, args);
     }
-    [_createObjectStore_2](name) {
-      return this.createObjectStore(name);
+    [_createObjectStore_2](...args) {
+      return this.createObjectStore.apply(this, args);
     }
-    [dartx.deleteObjectStore](name) {
-      return this.deleteObjectStore(name);
+    [dartx.deleteObjectStore](...args) {
+      return this.deleteObjectStore.apply(this, args);
     }
     get [dartx.onAbort]() {
       return indexed_db.Database.abortEvent.forTarget(this);
@@ -38693,17 +38693,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cmp](first, second) {
-      return this.cmp(first, second);
+    [dartx.cmp](...args) {
+      return this.cmp.apply(this, args);
     }
-    [_deleteDatabase](name) {
-      return this.deleteDatabase(name);
+    [_deleteDatabase](...args) {
+      return this.deleteDatabase.apply(this, args);
     }
-    [_open](name, version) {
-      return this.open(name, version);
+    [_open](...args) {
+      return this.open.apply(this, args);
     }
-    [_webkitGetDatabaseNames]() {
-      return this.webkitGetDatabaseNames();
+    [_webkitGetDatabaseNames](...args) {
+      return this.webkitGetDatabaseNames.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.IdbFactory, {
@@ -38846,26 +38846,26 @@
     get [dartx.unique]() {
       return this.unique;
     }
-    [_count$0](key) {
-      return this.count(key);
+    [_count$0](...args) {
+      return this.count.apply(this, args);
     }
-    [_get$](key) {
-      return this.get(key);
+    [_get$](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](range, maxCount) {
-      return this.getAll(range, maxCount);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.getAllKeys](range, maxCount) {
-      return this.getAllKeys(range, maxCount);
+    [dartx.getAllKeys](...args) {
+      return this.getAllKeys.apply(this, args);
     }
-    [_getKey$](key) {
-      return this.getKey(key);
+    [_getKey$](...args) {
+      return this.getKey.apply(this, args);
     }
-    [_openCursor](range, direction) {
-      return this.openCursor(range, direction);
+    [_openCursor](...args) {
+      return this.openCursor.apply(this, args);
     }
-    [_openKeyCursor](range, direction) {
-      return this.openKeyCursor(range, direction);
+    [_openKeyCursor](...args) {
+      return this.openKeyCursor.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.Index, {
@@ -39119,17 +39119,17 @@
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_add_2](value_1);
     }
-    [_add_1](value, key) {
-      return this.add(value, key);
+    [_add_1](...args) {
+      return this.add.apply(this, args);
     }
-    [_add_2](value) {
-      return this.add(value);
+    [_add_2](...args) {
+      return this.add.apply(this, args);
     }
-    [_clear$0]() {
-      return this.clear();
+    [_clear$0](...args) {
+      return this.clear.apply(this, args);
     }
-    [_count$0](key) {
-      return this.count(key);
+    [_count$0](...args) {
+      return this.count.apply(this, args);
     }
     [_createIndex](name, keyPath, options) {
       if (options === void 0) options = null;
@@ -39139,35 +39139,35 @@
       }
       return this[_createIndex_2](name, keyPath);
     }
-    [_createIndex_1](name, keyPath, options) {
-      return this.createIndex(name, keyPath, options);
+    [_createIndex_1](...args) {
+      return this.createIndex.apply(this, args);
     }
-    [_createIndex_2](name, keyPath) {
-      return this.createIndex(name, keyPath);
+    [_createIndex_2](...args) {
+      return this.createIndex.apply(this, args);
     }
-    [_delete](key) {
-      return this.delete(key);
+    [_delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.deleteIndex](name) {
-      return this.deleteIndex(name);
+    [dartx.deleteIndex](...args) {
+      return this.deleteIndex.apply(this, args);
     }
-    [_get$](key) {
-      return this.get(key);
+    [_get$](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](range, maxCount) {
-      return this.getAll(range, maxCount);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.getAllKeys](range, maxCount) {
-      return this.getAllKeys(range, maxCount);
+    [dartx.getAllKeys](...args) {
+      return this.getAllKeys.apply(this, args);
     }
-    [dartx.index](name) {
-      return this.index(name);
+    [dartx.index](...args) {
+      return this.index.apply(this, args);
     }
-    [_openCursor](range, direction) {
-      return this.openCursor(range, direction);
+    [_openCursor](...args) {
+      return this.openCursor.apply(this, args);
     }
-    [dartx.openKeyCursor](range, direction) {
-      return this.openKeyCursor(range, direction);
+    [dartx.openKeyCursor](...args) {
+      return this.openKeyCursor.apply(this, args);
     }
     [_put](value, key) {
       if (key === void 0) key = null;
@@ -39179,11 +39179,11 @@
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_put_2](value_1);
     }
-    [_put_1](value, key) {
-      return this.put(value, key);
+    [_put_1](...args) {
+      return this.put.apply(this, args);
     }
-    [_put_2](value) {
-      return this.put(value);
+    [_put_2](...args) {
+      return this.put.apply(this, args);
     }
     static _cursorStreamFromResult(T) {
       return (request, autoAdvance) => {
@@ -39398,11 +39398,11 @@
     get [dartx.objectStoreNames]() {
       return this.objectStoreNames;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.objectStore](name) {
-      return this.objectStore(name);
+    [dartx.objectStore](...args) {
+      return this.objectStore.apply(this, args);
     }
     get [dartx.onAbort]() {
       return indexed_db.Transaction.abortEvent.forTarget(this);
@@ -39549,17 +39549,17 @@
     get [dartx.type]() {
       return this.type;
     }
-    [_initEvent](type, bubbles, cancelable) {
-      return this.initEvent(type, bubbles, cancelable);
+    [_initEvent](...args) {
+      return this.initEvent.apply(this, args);
     }
-    [dartx.preventDefault]() {
-      return this.preventDefault();
+    [dartx.preventDefault](...args) {
+      return this.preventDefault.apply(this, args);
     }
-    [dartx.stopImmediatePropagation]() {
-      return this.stopImmediatePropagation();
+    [dartx.stopImmediatePropagation](...args) {
+      return this.stopImmediatePropagation.apply(this, args);
     }
-    [dartx.stopPropagation]() {
-      return this.stopPropagation();
+    [dartx.stopPropagation](...args) {
+      return this.stopPropagation.apply(this, args);
     }
   };
   dart.setSignature(html$.Event, {
@@ -39860,26 +39860,26 @@
     set [dartx.text](value) {
       this.textContent = value;
     }
-    [dartx.append](node) {
-      return this.appendChild(node);
+    [dartx.append](...args) {
+      return this.appendChild.apply(this, args);
     }
-    [dartx.clone](deep) {
-      return this.cloneNode(deep);
+    [dartx.clone](...args) {
+      return this.cloneNode.apply(this, args);
     }
-    [dartx.contains](other) {
-      return this.contains(other);
+    [dartx.contains](...args) {
+      return this.contains.apply(this, args);
     }
-    [dartx.hasChildNodes]() {
-      return this.hasChildNodes();
+    [dartx.hasChildNodes](...args) {
+      return this.hasChildNodes.apply(this, args);
     }
-    [dartx.insertBefore](node, child) {
-      return this.insertBefore(node, child);
+    [dartx.insertBefore](...args) {
+      return this.insertBefore.apply(this, args);
     }
-    [_removeChild](child) {
-      return this.removeChild(child);
+    [_removeChild](...args) {
+      return this.removeChild.apply(this, args);
     }
-    [_replaceChild](node, child) {
-      return this.replaceChild(node, child);
+    [_replaceChild](...args) {
+      return this.replaceChild.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.Node, '_created');
@@ -40359,8 +40359,8 @@
       let convertedTiming = core.Map.is(timing) ? html_common.convertDartToNative_Dictionary(timing) : timing;
       return convertedTiming == null ? this[_animate](convertedFrames) : this[_animate](convertedFrames, convertedTiming);
     }
-    [_animate](effect, timing) {
-      return this.animate(effect, timing);
+    [_animate](...args) {
+      return this.animate.apply(this, args);
     }
     [dartx.attributeChanged](name, oldValue, newValue) {}
     get [_xtag]() {
@@ -40420,8 +40420,8 @@
         this[_insertAdjacentNode](where, html$.Text.new(text));
       }
     }
-    [_insertAdjacentText](where, text) {
-      return this.insertAdjacentText(where, text);
+    [_insertAdjacentText](...args) {
+      return this.insertAdjacentText.apply(this, args);
     }
     [dartx.insertAdjacentHtml](where, html, opts) {
       let validator = opts && 'validator' in opts ? opts.validator : null;
@@ -40432,8 +40432,8 @@
         this[_insertAdjacentNode](where, this[dartx.createFragment](html, {validator: validator, treeSanitizer: treeSanitizer}));
       }
     }
-    [_insertAdjacentHtml](where, text) {
-      return this.insertAdjacentHTML(where, text);
+    [_insertAdjacentHtml](...args) {
+      return this.insertAdjacentHTML.apply(this, args);
     }
     [dartx.insertAdjacentElement](where, element) {
       if (!!this.insertAdjacentElement) {
@@ -40443,8 +40443,8 @@
       }
       return element;
     }
-    [_insertAdjacentElement](where, element) {
-      return this.insertAdjacentElement(where, element);
+    [_insertAdjacentElement](...args) {
+      return this.insertAdjacentElement.apply(this, args);
     }
     [_insertAdjacentNode](where, node) {
       switch (where[dartx.toLowerCase]()) {
@@ -40758,14 +40758,14 @@
     set [dartx.dropzone](value) {
       this.webkitdropzone = value;
     }
-    [dartx.blur]() {
-      return this.blur();
+    [dartx.blur](...args) {
+      return this.blur.apply(this, args);
     }
-    [dartx.click]() {
-      return this.click();
+    [dartx.click](...args) {
+      return this.click.apply(this, args);
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
     get [_attributes$]() {
       return this.attributes;
@@ -40830,50 +40830,50 @@
     get [dartx.tagName]() {
       return this.tagName;
     }
-    [dartx.closest](selectors) {
-      return this.closest(selectors);
+    [dartx.closest](...args) {
+      return this.closest.apply(this, args);
     }
-    [dartx.getAnimations]() {
-      return this.getAnimations();
+    [dartx.getAnimations](...args) {
+      return this.getAnimations.apply(this, args);
     }
-    [dartx.getAttribute](name) {
-      return this.getAttribute(name);
+    [dartx.getAttribute](...args) {
+      return this.getAttribute.apply(this, args);
     }
-    [dartx.getAttributeNS](namespaceURI, localName) {
-      return this.getAttributeNS(namespaceURI, localName);
+    [dartx.getAttributeNS](...args) {
+      return this.getAttributeNS.apply(this, args);
     }
-    [dartx.getBoundingClientRect]() {
-      return this.getBoundingClientRect();
+    [dartx.getBoundingClientRect](...args) {
+      return this.getBoundingClientRect.apply(this, args);
     }
-    [dartx.getClientRects]() {
-      return this.getClientRects();
+    [dartx.getClientRects](...args) {
+      return this.getClientRects.apply(this, args);
     }
-    [dartx.getDestinationInsertionPoints]() {
-      return this.getDestinationInsertionPoints();
+    [dartx.getDestinationInsertionPoints](...args) {
+      return this.getDestinationInsertionPoints.apply(this, args);
     }
-    [dartx.getElementsByClassName](classNames) {
-      return this.getElementsByClassName(classNames);
+    [dartx.getElementsByClassName](...args) {
+      return this.getElementsByClassName.apply(this, args);
     }
-    [_getElementsByTagName](localName) {
-      return this.getElementsByTagName(localName);
+    [_getElementsByTagName](...args) {
+      return this.getElementsByTagName.apply(this, args);
     }
-    [_hasAttribute](name) {
-      return this.hasAttribute(name);
+    [_hasAttribute](...args) {
+      return this.hasAttribute.apply(this, args);
     }
-    [_hasAttributeNS](namespaceURI, localName) {
-      return this.hasAttributeNS(namespaceURI, localName);
+    [_hasAttributeNS](...args) {
+      return this.hasAttributeNS.apply(this, args);
     }
-    [_removeAttribute](name) {
-      return this.removeAttribute(name);
+    [_removeAttribute](...args) {
+      return this.removeAttribute.apply(this, args);
     }
-    [_removeAttributeNS](namespaceURI, localName) {
-      return this.removeAttributeNS(namespaceURI, localName);
+    [_removeAttributeNS](...args) {
+      return this.removeAttributeNS.apply(this, args);
     }
-    [dartx.requestFullscreen]() {
-      return this.requestFullscreen();
+    [dartx.requestFullscreen](...args) {
+      return this.requestFullscreen.apply(this, args);
     }
-    [dartx.requestPointerLock]() {
-      return this.requestPointerLock();
+    [dartx.requestPointerLock](...args) {
+      return this.requestPointerLock.apply(this, args);
     }
     [dartx.scroll](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40893,14 +40893,14 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scroll_1]() {
-      return this.scroll();
+    [_scroll_1](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_2](options) {
-      return this.scroll(options);
+    [_scroll_2](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_3](x, y) {
-      return this.scroll(x, y);
+    [_scroll_3](...args) {
+      return this.scroll.apply(this, args);
     }
     [dartx.scrollBy](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40920,20 +40920,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollBy_1]() {
-      return this.scrollBy();
+    [_scrollBy_1](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_2](options) {
-      return this.scrollBy(options);
+    [_scrollBy_2](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_3](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_3](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollIntoView](alignWithTop) {
-      return this.scrollIntoView(alignWithTop);
+    [_scrollIntoView](...args) {
+      return this.scrollIntoView.apply(this, args);
     }
-    [_scrollIntoViewIfNeeded](centerIfNeeded) {
-      return this.scrollIntoViewIfNeeded(centerIfNeeded);
+    [_scrollIntoViewIfNeeded](...args) {
+      return this.scrollIntoViewIfNeeded.apply(this, args);
     }
     [dartx.scrollTo](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40953,26 +40953,26 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollTo_1]() {
-      return this.scrollTo();
+    [_scrollTo_1](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_2](options) {
-      return this.scrollTo(options);
+    [_scrollTo_2](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_3](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_3](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [dartx.setAttribute](name, value) {
-      return this.setAttribute(name, value);
+    [dartx.setAttribute](...args) {
+      return this.setAttribute.apply(this, args);
     }
-    [dartx.setAttributeNS](namespaceURI, name, value) {
-      return this.setAttributeNS(namespaceURI, name, value);
+    [dartx.setAttributeNS](...args) {
+      return this.setAttributeNS.apply(this, args);
     }
-    [dartx.after](nodes) {
-      return this.after(nodes);
+    [dartx.after](...args) {
+      return this.after.apply(this, args);
     }
-    [dartx.before](nodes) {
-      return this.before(nodes);
+    [dartx.before](...args) {
+      return this.before.apply(this, args);
     }
     get [dartx.nextElementSibling]() {
       return this.nextElementSibling;
@@ -40992,11 +40992,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.Element.abortEvent.forElement(this);
@@ -42052,20 +42052,20 @@
     set [dartx.startTime](value) {
       this.startTime = value;
     }
-    [dartx.cancel]() {
-      return this.cancel();
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.finish]() {
-      return this.finish();
+    [dartx.finish](...args) {
+      return this.finish.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.reverse]() {
-      return this.reverse();
+    [dartx.reverse](...args) {
+      return this.reverse.apply(this, args);
     }
   };
   dart.setSignature(html$.Animation, {
@@ -42316,11 +42316,11 @@
     set [dartx.playbackRate](value) {
       this.playbackRate = value;
     }
-    [dartx.getAnimations]() {
-      return this.getAnimations();
+    [dartx.getAnimations](...args) {
+      return this.getAnimations.apply(this, args);
     }
-    [dartx.play](source) {
-      return this.play(source);
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
   };
   dart.setSignature(html$.AnimationTimeline, {
@@ -42382,14 +42382,14 @@
     get [dartx.status]() {
       return this.status;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.swapCache]() {
-      return this.swapCache();
+    [dartx.swapCache](...args) {
+      return this.swapCache.apply(this, args);
     }
-    [dartx.update]() {
-      return this.update();
+    [dartx.update](...args) {
+      return this.update.apply(this, args);
     }
     get [dartx.onCached]() {
       return html$.ApplicationCache.cachedEvent.forTarget(this);
@@ -42936,35 +42936,35 @@
     get [dartx.videoDecodedByteCount]() {
       return this.webkitVideoDecodedByteCount;
     }
-    [dartx.addTextTrack](kind, label, language) {
-      return this.addTextTrack(kind, label, language);
+    [dartx.addTextTrack](...args) {
+      return this.addTextTrack.apply(this, args);
     }
-    [dartx.canPlayType](type, keySystem) {
-      return this.canPlayType(type, keySystem);
+    [dartx.canPlayType](...args) {
+      return this.canPlayType.apply(this, args);
     }
-    [dartx.load]() {
-      return this.load();
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.setMediaKeys](mediaKeys) {
-      return this.setMediaKeys(mediaKeys);
+    [dartx.setMediaKeys](...args) {
+      return this.setMediaKeys.apply(this, args);
     }
-    [dartx.setSinkId](sinkId) {
-      return this.setSinkId(sinkId);
+    [dartx.setSinkId](...args) {
+      return this.setSinkId.apply(this, args);
     }
-    [dartx.addKey](keySystem, key, initData, sessionId) {
-      return this.webkitAddKey(keySystem, key, initData, sessionId);
+    [dartx.addKey](...args) {
+      return this.webkitAddKey.apply(this, args);
     }
-    [dartx.cancelKeyRequest](keySystem, sessionId) {
-      return this.webkitCancelKeyRequest(keySystem, sessionId);
+    [dartx.cancelKeyRequest](...args) {
+      return this.webkitCancelKeyRequest.apply(this, args);
     }
-    [dartx.generateKeyRequest](keySystem, initData) {
-      return this.webkitGenerateKeyRequest(keySystem, initData);
+    [dartx.generateKeyRequest](...args) {
+      return this.webkitGenerateKeyRequest.apply(this, args);
     }
     get [dartx.onKeyAdded]() {
       return html$.MediaElement.keyAddedEvent.forElement(this);
@@ -43168,11 +43168,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.AudioTrackList.changeEvent.forTarget(this);
@@ -43372,8 +43372,8 @@
     get [dartx.userChoice]() {
       return this.userChoice;
     }
-    [dartx.prompt]() {
-      return this.prompt();
+    [dartx.prompt](...args) {
+      return this.prompt.apply(this, args);
     }
   };
   dart.setSignature(html$.BeforeInstallPromptEvent, {
@@ -43428,11 +43428,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.slice](start, end, contentType) {
-      return this.slice(start, end, contentType);
+    [dartx.slice](...args) {
+      return this.slice.apply(this, args);
     }
     static new(blobParts, type, endings) {
       if (type === void 0) type = null;
@@ -43492,8 +43492,8 @@
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_requestDevice_1](options_1);
     }
-    [_requestDevice_1](options) {
-      return this.requestDevice(options);
+    [_requestDevice_1](...args) {
+      return this.requestDevice.apply(this, args);
     }
   };
   dart.setSignature(html$.Bluetooth, {
@@ -43543,8 +43543,8 @@
     get [dartx.vendorIDSource]() {
       return this.vendorIDSource;
     }
-    [dartx.connectGatt]() {
-      return this.connectGATT();
+    [dartx.connectGatt](...args) {
+      return this.connectGATT.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothDevice, {
@@ -43574,11 +43574,11 @@
     get [dartx.uuid]() {
       return this.uuid;
     }
-    [dartx.readValue]() {
-      return this.readValue();
+    [dartx.readValue](...args) {
+      return this.readValue.apply(this, args);
     }
-    [dartx.writeValue](value) {
-      return this.writeValue(value);
+    [dartx.writeValue](...args) {
+      return this.writeValue.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattCharacteristic, {
@@ -43601,8 +43601,8 @@
     get [dartx.connected]() {
       return this.connected;
     }
-    [dartx.getPrimaryService](service) {
-      return this.getPrimaryService(service);
+    [dartx.getPrimaryService](...args) {
+      return this.getPrimaryService.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattRemoteServer, {
@@ -43626,8 +43626,8 @@
     get [dartx.uuid]() {
       return this.uuid;
     }
-    [dartx.getCharacteristic](characteristic) {
-      return this.getCharacteristic(characteristic);
+    [dartx.getCharacteristic](...args) {
+      return this.getCharacteristic.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattService, {
@@ -43669,17 +43669,17 @@
     get [dartx.bodyUsed]() {
       return this.bodyUsed;
     }
-    [dartx.arrayBuffer]() {
-      return this.arrayBuffer();
+    [dartx.arrayBuffer](...args) {
+      return this.arrayBuffer.apply(this, args);
     }
-    [dartx.blob]() {
-      return this.blob();
+    [dartx.blob](...args) {
+      return this.blob.apply(this, args);
     }
-    [dartx.json]() {
-      return this.json();
+    [dartx.json](...args) {
+      return this.json.apply(this, args);
     }
-    [dartx.text]() {
-      return this.text();
+    [dartx.text](...args) {
+      return this.text.apply(this, args);
     }
   };
   dart.setSignature(html$.Body, {
@@ -43953,14 +43953,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ButtonElement, 'created');
@@ -44021,26 +44021,26 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.appendData](data) {
-      return this.appendData(data);
+    [dartx.appendData](...args) {
+      return this.appendData.apply(this, args);
     }
-    [dartx.deleteData](offset, count) {
-      return this.deleteData(offset, count);
+    [dartx.deleteData](...args) {
+      return this.deleteData.apply(this, args);
     }
-    [dartx.insertData](offset, data) {
-      return this.insertData(offset, data);
+    [dartx.insertData](...args) {
+      return this.insertData.apply(this, args);
     }
-    [dartx.replaceData](offset, count, data) {
-      return this.replaceData(offset, count, data);
+    [dartx.replaceData](...args) {
+      return this.replaceData.apply(this, args);
     }
-    [dartx.substringData](offset, count) {
-      return this.substringData(offset, count);
+    [dartx.substringData](...args) {
+      return this.substringData.apply(this, args);
     }
-    [dartx.after](nodes) {
-      return this.after(nodes);
+    [dartx.after](...args) {
+      return this.after.apply(this, args);
     }
-    [dartx.before](nodes) {
-      return this.before(nodes);
+    [dartx.before](...args) {
+      return this.before.apply(this, args);
     }
     get [dartx.nextElementSibling]() {
       return this.nextElementSibling;
@@ -44084,11 +44084,11 @@
     get [dartx.wholeText]() {
       return this.wholeText;
     }
-    [dartx.getDestinationInsertionPoints]() {
-      return this.getDestinationInsertionPoints();
+    [dartx.getDestinationInsertionPoints](...args) {
+      return this.getDestinationInsertionPoints.apply(this, args);
     }
-    [dartx.splitText](offset) {
-      return this.splitText(offset);
+    [dartx.splitText](...args) {
+      return this.splitText.apply(this, args);
     }
   };
   dart.setSignature(html$.Text, {
@@ -44125,14 +44125,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.delete](cacheName) {
-      return this.delete(cacheName);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.has](cacheName) {
-      return this.has(cacheName);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
-    [dartx.keys]() {
-      return this.keys();
+    [dartx.keys](...args) {
+      return this.keys.apply(this, args);
     }
     [dartx.match](request, options) {
       if (options === void 0) options = null;
@@ -44142,14 +44142,14 @@
       }
       return this[_match_2](request);
     }
-    [_match_1](request, options) {
-      return this.match(request, options);
+    [_match_1](...args) {
+      return this.match.apply(this, args);
     }
-    [_match_2](request) {
-      return this.match(request);
+    [_match_2](...args) {
+      return this.match.apply(this, args);
     }
-    [dartx.open](cacheName) {
-      return this.open(cacheName);
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
   };
   dart.setSignature(html$.CacheStorage, {
@@ -44215,14 +44215,14 @@
       }
       return this[_getContext_2](contextId);
     }
-    [_getContext_1](contextId, attributes) {
-      return this.getContext(contextId, attributes);
+    [_getContext_1](...args) {
+      return this.getContext.apply(this, args);
     }
-    [_getContext_2](contextId) {
-      return this.getContext(contextId);
+    [_getContext_2](...args) {
+      return this.getContext.apply(this, args);
     }
-    [_toDataUrl](type, arguments_OR_quality) {
-      return this.toDataURL(type, arguments_OR_quality);
+    [_toDataUrl](...args) {
+      return this.toDataURL.apply(this, args);
     }
     get [dartx.onWebGlContextLost]() {
       return html$.CanvasElement.webGlContextLostEvent.forElement(this);
@@ -44299,8 +44299,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.addColorStop](offset, color) {
-      return this.addColorStop(offset, color);
+    [dartx.addColorStop](...args) {
+      return this.addColorStop.apply(this, args);
     }
   };
   dart.setSignature(html$.CanvasGradient, {
@@ -44315,8 +44315,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.setTransform](transform) {
-      return this.setTransform(transform);
+    [dartx.setTransform](...args) {
+      return this.setTransform.apply(this, args);
     }
   };
   dart.setSignature(html$.CanvasPattern, {
@@ -44545,23 +44545,23 @@
       this[_addHitRegion_2]();
       return;
     }
-    [_addHitRegion_1](options) {
-      return this.addHitRegion(options);
+    [_addHitRegion_1](...args) {
+      return this.addHitRegion.apply(this, args);
     }
-    [_addHitRegion_2]() {
-      return this.addHitRegion();
+    [_addHitRegion_2](...args) {
+      return this.addHitRegion.apply(this, args);
     }
-    [dartx.beginPath]() {
-      return this.beginPath();
+    [dartx.beginPath](...args) {
+      return this.beginPath.apply(this, args);
     }
-    [dartx.clearHitRegions]() {
-      return this.clearHitRegions();
+    [dartx.clearHitRegions](...args) {
+      return this.clearHitRegions.apply(this, args);
     }
-    [dartx.clearRect](x, y, width, height) {
-      return this.clearRect(x, y, width, height);
+    [dartx.clearRect](...args) {
+      return this.clearRect.apply(this, args);
     }
-    [dartx.clip](path_OR_winding, winding) {
-      return this.clip(path_OR_winding, winding);
+    [dartx.clip](...args) {
+      return this.clip.apply(this, args);
     }
     [dartx.createImageData](imagedata_OR_sw, sh) {
       if (sh === void 0) sh = null;
@@ -44574,53 +44574,53 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_createImageData_1](imagedata) {
-      return this.createImageData(imagedata);
+    [_createImageData_1](...args) {
+      return this.createImageData.apply(this, args);
     }
-    [_createImageData_2](sw, sh) {
-      return this.createImageData(sw, sh);
+    [_createImageData_2](...args) {
+      return this.createImageData.apply(this, args);
     }
-    [dartx.createLinearGradient](x0, y0, x1, y1) {
-      return this.createLinearGradient(x0, y0, x1, y1);
+    [dartx.createLinearGradient](...args) {
+      return this.createLinearGradient.apply(this, args);
     }
-    [dartx.createPattern](image, repetitionType) {
-      return this.createPattern(image, repetitionType);
+    [dartx.createPattern](...args) {
+      return this.createPattern.apply(this, args);
     }
-    [dartx.createRadialGradient](x0, y0, r0, x1, y1, r1) {
-      return this.createRadialGradient(x0, y0, r0, x1, y1, r1);
+    [dartx.createRadialGradient](...args) {
+      return this.createRadialGradient.apply(this, args);
     }
-    [dartx.drawFocusIfNeeded](element_OR_path, element) {
-      return this.drawFocusIfNeeded(element_OR_path, element);
+    [dartx.drawFocusIfNeeded](...args) {
+      return this.drawFocusIfNeeded.apply(this, args);
     }
-    [dartx.fillRect](x, y, width, height) {
-      return this.fillRect(x, y, width, height);
+    [dartx.fillRect](...args) {
+      return this.fillRect.apply(this, args);
     }
     [dartx.getContextAttributes]() {
       return html_common.convertNativeToDart_Dictionary(this[_getContextAttributes_1]());
     }
-    [_getContextAttributes_1]() {
-      return this.getContextAttributes();
+    [_getContextAttributes_1](...args) {
+      return this.getContextAttributes.apply(this, args);
     }
     [dartx.getImageData](sx, sy, sw, sh) {
       return html_common.convertNativeToDart_ImageData(this[_getImageData_1](sx, sy, sw, sh));
     }
-    [_getImageData_1](sx, sy, sw, sh) {
-      return this.getImageData(sx, sy, sw, sh);
+    [_getImageData_1](...args) {
+      return this.getImageData.apply(this, args);
     }
-    [_getLineDash]() {
-      return this.getLineDash();
+    [_getLineDash](...args) {
+      return this.getLineDash.apply(this, args);
     }
-    [dartx.isContextLost]() {
-      return this.isContextLost();
+    [dartx.isContextLost](...args) {
+      return this.isContextLost.apply(this, args);
     }
-    [dartx.isPointInPath](path_OR_x, x_OR_y, winding_OR_y, winding) {
-      return this.isPointInPath(path_OR_x, x_OR_y, winding_OR_y, winding);
+    [dartx.isPointInPath](...args) {
+      return this.isPointInPath.apply(this, args);
     }
-    [dartx.isPointInStroke](path_OR_x, x_OR_y, y) {
-      return this.isPointInStroke(path_OR_x, x_OR_y, y);
+    [dartx.isPointInStroke](...args) {
+      return this.isPointInStroke.apply(this, args);
     }
-    [dartx.measureText](text) {
-      return this.measureText(text);
+    [dartx.measureText](...args) {
+      return this.measureText.apply(this, args);
     }
     [dartx.putImageData](imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
       if (dirtyX === void 0) dirtyX = null;
@@ -44639,77 +44639,77 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_putImageData_1](imagedata, dx, dy) {
-      return this.putImageData(imagedata, dx, dy);
+    [_putImageData_1](...args) {
+      return this.putImageData.apply(this, args);
     }
-    [_putImageData_2](imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
-      return this.putImageData(imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight);
+    [_putImageData_2](...args) {
+      return this.putImageData.apply(this, args);
     }
-    [dartx.removeHitRegion](id) {
-      return this.removeHitRegion(id);
+    [dartx.removeHitRegion](...args) {
+      return this.removeHitRegion.apply(this, args);
     }
-    [dartx.resetTransform]() {
-      return this.resetTransform();
+    [dartx.resetTransform](...args) {
+      return this.resetTransform.apply(this, args);
     }
-    [dartx.restore]() {
-      return this.restore();
+    [dartx.restore](...args) {
+      return this.restore.apply(this, args);
     }
-    [dartx.rotate](angle) {
-      return this.rotate(angle);
+    [dartx.rotate](...args) {
+      return this.rotate.apply(this, args);
     }
-    [dartx.save]() {
-      return this.save();
+    [dartx.save](...args) {
+      return this.save.apply(this, args);
     }
-    [dartx.scale](x, y) {
-      return this.scale(x, y);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scrollPathIntoView](path) {
-      return this.scrollPathIntoView(path);
+    [dartx.scrollPathIntoView](...args) {
+      return this.scrollPathIntoView.apply(this, args);
     }
-    [dartx.setTransform](a, b, c, d, e, f) {
-      return this.setTransform(a, b, c, d, e, f);
+    [dartx.setTransform](...args) {
+      return this.setTransform.apply(this, args);
     }
-    [dartx.stroke](path) {
-      return this.stroke(path);
+    [dartx.stroke](...args) {
+      return this.stroke.apply(this, args);
     }
-    [dartx.strokeRect](x, y, width, height) {
-      return this.strokeRect(x, y, width, height);
+    [dartx.strokeRect](...args) {
+      return this.strokeRect.apply(this, args);
     }
-    [dartx.strokeText](text, x, y, maxWidth) {
-      return this.strokeText(text, x, y, maxWidth);
+    [dartx.strokeText](...args) {
+      return this.strokeText.apply(this, args);
     }
-    [dartx.transform](a, b, c, d, e, f) {
-      return this.transform(a, b, c, d, e, f);
+    [dartx.transform](...args) {
+      return this.transform.apply(this, args);
     }
-    [dartx.translate](x, y) {
-      return this.translate(x, y);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
-    [_arc](x, y, radius, startAngle, endAngle, anticlockwise) {
-      return this.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+    [_arc](...args) {
+      return this.arc.apply(this, args);
     }
-    [dartx.arcTo](x1, y1, x2, y2, radius) {
-      return this.arcTo(x1, y1, x2, y2, radius);
+    [dartx.arcTo](...args) {
+      return this.arcTo.apply(this, args);
     }
-    [dartx.bezierCurveTo](cp1x, cp1y, cp2x, cp2y, x, y) {
-      return this.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);
+    [dartx.bezierCurveTo](...args) {
+      return this.bezierCurveTo.apply(this, args);
     }
-    [dartx.closePath]() {
-      return this.closePath();
+    [dartx.closePath](...args) {
+      return this.closePath.apply(this, args);
     }
-    [dartx.ellipse](x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
-      return this.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);
+    [dartx.ellipse](...args) {
+      return this.ellipse.apply(this, args);
     }
-    [dartx.lineTo](x, y) {
-      return this.lineTo(x, y);
+    [dartx.lineTo](...args) {
+      return this.lineTo.apply(this, args);
     }
-    [dartx.moveTo](x, y) {
-      return this.moveTo(x, y);
+    [dartx.moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.quadraticCurveTo](cpx, cpy, x, y) {
-      return this.quadraticCurveTo(cpx, cpy, x, y);
+    [dartx.quadraticCurveTo](...args) {
+      return this.quadraticCurveTo.apply(this, args);
     }
-    [dartx.rect](x, y, width, height) {
-      return this.rect(x, y, width, height);
+    [dartx.rect](...args) {
+      return this.rect.apply(this, args);
     }
     [dartx.createImageDataFromImageData](imagedata) {
       return this.createImageData(imagedata);
@@ -44745,14 +44745,14 @@
         this[dartx.drawImageScaledFromSource](source, sourceRect[dartx.left], sourceRect[dartx.top], sourceRect[dartx.width], sourceRect[dartx.height], destRect[dartx.left], destRect[dartx.top], destRect[dartx.width], destRect[dartx.height]);
       }
     }
-    [dartx.drawImage](source, destX, destY) {
-      return this.drawImage(source, destX, destY);
+    [dartx.drawImage](...args) {
+      return this.drawImage.apply(this, args);
     }
-    [dartx.drawImageScaled](source, destX, destY, destWidth, destHeight) {
-      return this.drawImage(source, destX, destY, destWidth, destHeight);
+    [dartx.drawImageScaled](...args) {
+      return this.drawImage.apply(this, args);
     }
-    [dartx.drawImageScaledFromSource](source, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight) {
-      return this.drawImage(source, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight);
+    [dartx.drawImageScaledFromSource](...args) {
+      return this.drawImage.apply(this, args);
     }
     get [dartx.lineDashOffset]() {
       return this.lineDashOffset || this.webkitLineDashOffset;
@@ -44999,11 +44999,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.Client, {
@@ -45031,8 +45031,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.claim]() {
-      return this.claim();
+    [dartx.claim](...args) {
+      return this.claim.apply(this, args);
     }
     [dartx.matchAll](options) {
       if (options === void 0) options = null;
@@ -45042,14 +45042,14 @@
       }
       return this[_matchAll_2]();
     }
-    [_matchAll_1](options) {
-      return this.matchAll(options);
+    [_matchAll_1](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [_matchAll_2]() {
-      return this.matchAll();
+    [_matchAll_2](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [dartx.openWindow](url) {
-      return this.openWindow(url);
+    [dartx.openWindow](...args) {
+      return this.openWindow.apply(this, args);
     }
   };
   dart.setSignature(html$.Clients, {
@@ -45207,8 +45207,8 @@
     get [_which]() {
       return this.which;
     }
-    [_initUIEvent](type, bubbles, cancelable, view, detail) {
-      return this.initUIEvent(type, bubbles, cancelable, view, detail);
+    [_initUIEvent](...args) {
+      return this.initUIEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.UIEvent, {
@@ -45271,8 +45271,8 @@
     get [dartx.data]() {
       return this.data;
     }
-    [_initCompositionEvent](type, bubbles, cancelable, view, data) {
-      return this.initCompositionEvent(type, bubbles, cancelable, view, data);
+    [_initCompositionEvent](...args) {
+      return this.initCompositionEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.CompositionEvent, {
@@ -45331,11 +45331,11 @@
     set [dartx.transform](value) {
       this.transform = value;
     }
-    [dartx.disconnect]() {
-      return this.disconnect();
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
-    [dartx.supports](attribute) {
-      return this.supports(attribute);
+    [dartx.supports](...args) {
+      return this.supports.apply(this, args);
     }
   };
   dart.setSignature(html$.CompositorProxy, {
@@ -45384,14 +45384,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.terminate]() {
-      return this.terminate();
+    [dartx.terminate](...args) {
+      return this.terminate.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.CompositorWorker.errorEvent.forTarget(this);
@@ -45490,8 +45490,8 @@
     get [dartx.self]() {
       return this.self;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.fetch](input, init) {
       if (init === void 0) init = null;
@@ -45501,17 +45501,17 @@
       }
       return this[_fetch_2](input);
     }
-    [_fetch_1](input, init) {
-      return this.fetch(input, init);
+    [_fetch_1](...args) {
+      return this.fetch.apply(this, args);
     }
-    [_fetch_2](input) {
-      return this.fetch(input);
+    [_fetch_2](...args) {
+      return this.fetch.apply(this, args);
     }
-    [dartx.importScripts](urls) {
-      return this.importScripts(urls);
+    [dartx.importScripts](...args) {
+      return this.importScripts.apply(this, args);
     }
-    [_webkitRequestFileSystem](type, size, successCallback, errorCallback) {
-      return this.webkitRequestFileSystem(type, size, successCallback, errorCallback);
+    [_webkitRequestFileSystem](...args) {
+      return this.webkitRequestFileSystem.apply(this, args);
     }
     [dartx.webkitRequestFileSystem](type, size) {
       let completer = CompleterOfFileSystem().new();
@@ -45522,14 +45522,14 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.requestFileSystemSync](type, size) {
-      return this.webkitRequestFileSystemSync(type, size);
+    [dartx.requestFileSystemSync](...args) {
+      return this.webkitRequestFileSystemSync.apply(this, args);
     }
-    [dartx.resolveLocalFileSystemSyncUrl](url) {
-      return this.webkitResolveLocalFileSystemSyncURL(url);
+    [dartx.resolveLocalFileSystemSyncUrl](...args) {
+      return this.webkitResolveLocalFileSystemSyncURL.apply(this, args);
     }
-    [_webkitResolveLocalFileSystemUrl](url, successCallback, errorCallback) {
-      return this.webkitResolveLocalFileSystemURL(url, successCallback, errorCallback);
+    [_webkitResolveLocalFileSystemUrl](...args) {
+      return this.webkitResolveLocalFileSystemURL.apply(this, args);
     }
     [dartx.webkitResolveLocalFileSystemUrl](url) {
       let completer = CompleterOfEntry().new();
@@ -45540,29 +45540,29 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.atob](atob) {
-      return this.atob(atob);
+    [dartx.atob](...args) {
+      return this.atob.apply(this, args);
     }
-    [dartx.btoa](btoa) {
-      return this.btoa(btoa);
+    [dartx.btoa](...args) {
+      return this.btoa.apply(this, args);
     }
-    [_setInterval_String](handler, timeout, arguments$) {
-      return this.setInterval(handler, timeout, arguments$);
+    [_setInterval_String](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout_String](handler, timeout, arguments$) {
-      return this.setTimeout(handler, timeout, arguments$);
+    [_setTimeout_String](...args) {
+      return this.setTimeout.apply(this, args);
     }
-    [_clearInterval](handle) {
-      return this.clearInterval(handle);
+    [_clearInterval](...args) {
+      return this.clearInterval.apply(this, args);
     }
-    [_clearTimeout](handle) {
-      return this.clearTimeout(handle);
+    [_clearTimeout](...args) {
+      return this.clearTimeout.apply(this, args);
     }
-    [_setInterval](handler, timeout) {
-      return this.setInterval(handler, timeout);
+    [_setInterval](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout](handler, timeout) {
-      return this.setTimeout(handler, timeout);
+    [_setTimeout](...args) {
+      return this.setTimeout.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.WorkerGlobalScope.errorEvent.forTarget(this);
@@ -45627,8 +45627,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancelAnimationFrame](handle) {
-      return this.cancelAnimationFrame(handle);
+    [dartx.cancelAnimationFrame](...args) {
+      return this.cancelAnimationFrame.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -45641,14 +45641,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.requestAnimationFrame](callback) {
-      return this.requestAnimationFrame(callback);
+    [dartx.requestAnimationFrame](...args) {
+      return this.requestAnimationFrame.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.CompositorWorkerGlobalScope.messageEvent.forTarget(this);
@@ -45798,14 +45798,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.assertCondition](condition, arg) {
-      return this.assert(condition, arg);
+    [dartx.assertCondition](...args) {
+      return this.assert.apply(this, args);
     }
-    [dartx.timeline](title) {
-      return this.timeline(title);
+    [dartx.timeline](...args) {
+      return this.timeline.apply(this, args);
     }
-    [dartx.timelineEnd](title) {
-      return this.timelineEnd(title);
+    [dartx.timelineEnd](...args) {
+      return this.timelineEnd.apply(this, args);
     }
   };
   dart.setSignature(html$.ConsoleBase, {
@@ -45841,8 +45841,8 @@
     set [dartx.select](value) {
       this.select = value;
     }
-    [dartx.getDistributedNodes]() {
-      return this.getDistributedNodes();
+    [dartx.getDistributedNodes](...args) {
+      return this.getDistributedNodes.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ContentElement, 'created');
@@ -45949,8 +45949,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.notifySignedIn](credential) {
-      return this.notifySignedIn(credential);
+    [dartx.notifySignedIn](...args) {
+      return this.notifySignedIn.apply(this, args);
     }
     [dartx.request](options) {
       if (options === void 0) options = null;
@@ -45960,14 +45960,14 @@
       }
       return this[_request_2]();
     }
-    [_request_1](options) {
-      return this.request(options);
+    [_request_1](...args) {
+      return this.request.apply(this, args);
     }
-    [_request_2]() {
-      return this.request();
+    [_request_2](...args) {
+      return this.request.apply(this, args);
     }
-    [dartx.requireUserMediation]() {
-      return this.requireUserMediation();
+    [dartx.requireUserMediation](...args) {
+      return this.requireUserMediation.apply(this, args);
     }
   };
   dart.setSignature(html$.CredentialsContainer, {
@@ -45992,8 +45992,8 @@
     get [dartx.client]() {
       return this.client;
     }
-    [dartx.acceptConnection](shouldAccept) {
-      return this.acceptConnection(shouldAccept);
+    [dartx.acceptConnection](...args) {
+      return this.acceptConnection.apply(this, args);
     }
   };
   dart.setSignature(html$.CrossOriginConnectEvent, {
@@ -46028,11 +46028,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.CrossOriginServiceWorkerClient, {
@@ -46066,8 +46066,8 @@
     get [dartx.subtle]() {
       return this.subtle;
     }
-    [_getRandomValues](array) {
-      return this.getRandomValues(array);
+    [_getRandomValues](...args) {
+      return this.getRandomValues.apply(this, args);
     }
   };
   dart.setSignature(html$.Crypto, {
@@ -46236,11 +46236,11 @@
     get [dartx.cssRules]() {
       return this.cssRules;
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssGroupingRule, {
@@ -46328,17 +46328,17 @@
     set [dartx.name](value) {
       this.name = value;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.appendRule](rule) {
-      return this.appendRule(rule);
+    [dartx.appendRule](...args) {
+      return this.appendRule.apply(this, args);
     }
-    [dartx.deleteRule](select) {
-      return this.deleteRule(select);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.findRule](select) {
-      return this.findRule(select);
+    [dartx.findRule](...args) {
+      return this.findRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssKeyframesRule, {
@@ -50876,17 +50876,17 @@
     get [dartx.parentRule]() {
       return this.parentRule;
     }
-    [dartx.getPropertyPriority](property) {
-      return this.getPropertyPriority(property);
+    [dartx.getPropertyPriority](...args) {
+      return this.getPropertyPriority.apply(this, args);
     }
-    [_getPropertyValue](property) {
-      return this.getPropertyValue(property);
+    [_getPropertyValue](...args) {
+      return this.getPropertyValue.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.removeProperty](property) {
-      return this.removeProperty(property);
+    [dartx.removeProperty](...args) {
+      return this.removeProperty.apply(this, args);
     }
     get [dartx.background]() {
       return this[_background];
@@ -52868,17 +52868,17 @@
     get [dartx.rules]() {
       return this.rules;
     }
-    [dartx.addRule](selector, style, index) {
-      return this.addRule(selector, style, index);
+    [dartx.addRule](...args) {
+      return this.addRule.apply(this, args);
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
-    [dartx.removeRule](index) {
-      return this.removeRule(index);
+    [dartx.removeRule](...args) {
+      return this.removeRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssStyleSheet, {
@@ -52912,11 +52912,11 @@
     get [dartx.cssRules]() {
       return this.cssRules;
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssSupportsRule, {
@@ -53006,8 +53006,8 @@
     get [_get__detail]() {
       return this.detail;
     }
-    [_initCustomEvent](type, bubbles, cancelable, detail) {
-      return this.initCustomEvent(type, bubbles, cancelable, detail);
+    [_initCustomEvent](...args) {
+      return this.initCustomEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.CustomEvent, {
@@ -53119,17 +53119,17 @@
     get [dartx.types]() {
       return this.types;
     }
-    [dartx.clearData](format) {
-      return this.clearData(format);
+    [dartx.clearData](...args) {
+      return this.clearData.apply(this, args);
     }
-    [dartx.getData](format) {
-      return this.getData(format);
+    [dartx.getData](...args) {
+      return this.getData.apply(this, args);
     }
-    [dartx.setData](format, data) {
-      return this.setData(format, data);
+    [dartx.setData](...args) {
+      return this.setData.apply(this, args);
     }
-    [dartx.setDragImage](image, x, y) {
-      return this.setDragImage(image, x, y);
+    [dartx.setDragImage](...args) {
+      return this.setDragImage.apply(this, args);
     }
   };
   dart.setSignature(html$.DataTransfer, {
@@ -53167,11 +53167,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.getAsFile]() {
-      return this.getAsFile();
+    [dartx.getAsFile](...args) {
+      return this.getAsFile.apply(this, args);
     }
-    [_getAsString](callback) {
-      return this.getAsString(callback);
+    [_getAsString](...args) {
+      return this.getAsString.apply(this, args);
     }
     [dartx.getAsString]() {
       let completer = CompleterOfString().new();
@@ -53180,8 +53180,8 @@
       }, StringTovoid$()));
       return completer.future;
     }
-    [dartx.getAsEntry]() {
-      return this.webkitGetAsEntry();
+    [dartx.getAsEntry](...args) {
+      return this.webkitGetAsEntry.apply(this, args);
     }
   };
   dart.setSignature(html$.DataTransferItem, {
@@ -53215,23 +53215,23 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.add](data_OR_file, type) {
-      return this.add(data_OR_file, type);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.addData](data, type) {
-      return this.add(data, type);
+    [dartx.addData](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.addFile](file) {
-      return this.add(file);
+    [dartx.addFile](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.remove](index) {
-      return this.remove(index);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
     [dartx._get](index) {
       return this[index];
@@ -53271,11 +53271,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.DedicatedWorkerGlobalScope.messageEvent.forTarget(this);
@@ -53343,11 +53343,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.queryUsageAndQuota](storageType, usageCallback, errorCallback) {
-      return this.queryUsageAndQuota(storageType, usageCallback, errorCallback);
+    [dartx.queryUsageAndQuota](...args) {
+      return this.queryUsageAndQuota.apply(this, args);
     }
-    [dartx.requestQuota](storageType, newQuotaInBytes, quotaCallback, errorCallback) {
-      return this.requestQuota(storageType, newQuotaInBytes, quotaCallback, errorCallback);
+    [dartx.requestQuota](...args) {
+      return this.requestQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.DeprecatedStorageInfo, {
@@ -53372,11 +53372,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.queryUsageAndQuota](usageCallback, errorCallback) {
-      return this.queryUsageAndQuota(usageCallback, errorCallback);
+    [dartx.queryUsageAndQuota](...args) {
+      return this.queryUsageAndQuota.apply(this, args);
     }
-    [dartx.requestQuota](newQuotaInBytes, quotaCallback, errorCallback) {
-      return this.requestQuota(newQuotaInBytes, quotaCallback, errorCallback);
+    [dartx.requestQuota](...args) {
+      return this.requestQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.DeprecatedStorageQuota, {
@@ -53511,8 +53511,8 @@
     get [dartx.rotationRate]() {
       return this.rotationRate;
     }
-    [dartx.initDeviceMotionEvent](type, bubbles, cancelable, acceleration, accelerationIncludingGravity, rotationRate, interval) {
-      return this.initDeviceMotionEvent(type, bubbles, cancelable, acceleration, accelerationIncludingGravity, rotationRate, interval);
+    [dartx.initDeviceMotionEvent](...args) {
+      return this.initDeviceMotionEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.DeviceMotionEvent, {
@@ -53560,8 +53560,8 @@
     get [dartx.gamma]() {
       return this.gamma;
     }
-    [_initDeviceOrientationEvent](type, bubbles, cancelable, alpha, beta, gamma, absolute) {
-      return this.initDeviceOrientationEvent(type, bubbles, cancelable, alpha, beta, gamma, absolute);
+    [_initDeviceOrientationEvent](...args) {
+      return this.initDeviceOrientationEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.DeviceOrientationEvent, {
@@ -53634,14 +53634,14 @@
     set [dartx.returnValue](value) {
       this.returnValue = value;
     }
-    [dartx.close](returnValue) {
-      return this.close(returnValue);
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.show]() {
-      return this.show();
+    [dartx.show](...args) {
+      return this.show.apply(this, args);
     }
-    [dartx.showModal]() {
-      return this.showModal();
+    [dartx.showModal](...args) {
+      return this.showModal.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.DialogElement, 'created');
@@ -53711,8 +53711,8 @@
     get [dartx.name]() {
       return this.name;
     }
-    [_copyTo](parent, opts) {
-      return this.copyTo(parent, opts);
+    [_copyTo](...args) {
+      return this.copyTo.apply(this, args);
     }
     [dartx.copyTo](parent, opts) {
       let name = opts && 'name' in opts ? opts.name : null;
@@ -53724,8 +53724,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_getMetadata](successCallback, errorCallback) {
-      return this.getMetadata(successCallback, errorCallback);
+    [_getMetadata](...args) {
+      return this.getMetadata.apply(this, args);
     }
     [dartx.getMetadata]() {
       let completer = CompleterOfMetadata().new();
@@ -53736,8 +53736,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_getParent](successCallback, errorCallback) {
-      return this.getParent(successCallback, errorCallback);
+    [_getParent](...args) {
+      return this.getParent.apply(this, args);
     }
     [dartx.getParent]() {
       let completer = CompleterOfEntry().new();
@@ -53748,8 +53748,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_moveTo](parent, opts) {
-      return this.moveTo(parent, opts);
+    [_moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
     [dartx.moveTo](parent, opts) {
       let name = opts && 'name' in opts ? opts.name : null;
@@ -53761,8 +53761,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_remove$](successCallback, errorCallback) {
-      return this.remove(successCallback, errorCallback);
+    [_remove$](...args) {
+      return this.remove.apply(this, args);
     }
     [dartx.remove]() {
       let completer = async.Completer.new();
@@ -53773,8 +53773,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.toUrl]() {
-      return this.toURL();
+    [dartx.toUrl](...args) {
+      return this.toURL.apply(this, args);
     }
   };
   dart.setSignature(html$.Entry, {
@@ -53827,8 +53827,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.createReader]() {
-      return this.createReader();
+    [dartx.createReader](...args) {
+      return this.createReader.apply(this, args);
     }
     [__getDirectory](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53852,17 +53852,17 @@
       this[__getDirectory_4](path);
       return;
     }
-    [__getDirectory_1](path, options, successCallback, errorCallback) {
-      return this.getDirectory(path, options, successCallback, errorCallback);
+    [__getDirectory_1](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_2](path, options, successCallback) {
-      return this.getDirectory(path, options, successCallback);
+    [__getDirectory_2](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_3](path, options) {
-      return this.getDirectory(path, options);
+    [__getDirectory_3](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_4](path) {
-      return this.getDirectory(path);
+    [__getDirectory_4](...args) {
+      return this.getDirectory.apply(this, args);
     }
     [_getDirectory](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53896,17 +53896,17 @@
       this[__getFile_4](path);
       return;
     }
-    [__getFile_1](path, options, successCallback, errorCallback) {
-      return this.getFile(path, options, successCallback, errorCallback);
+    [__getFile_1](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_2](path, options, successCallback) {
-      return this.getFile(path, options, successCallback);
+    [__getFile_2](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_3](path, options) {
-      return this.getFile(path, options);
+    [__getFile_3](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_4](path) {
-      return this.getFile(path);
+    [__getFile_4](...args) {
+      return this.getFile.apply(this, args);
     }
     [_getFile](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53918,8 +53918,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_removeRecursively](successCallback, errorCallback) {
-      return this.removeRecursively(successCallback, errorCallback);
+    [_removeRecursively](...args) {
+      return this.removeRecursively.apply(this, args);
     }
     [dartx.removeRecursively]() {
       let completer = async.Completer.new();
@@ -53964,8 +53964,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_readEntries](successCallback, errorCallback) {
-      return this.readEntries(successCallback, errorCallback);
+    [_readEntries](...args) {
+      return this.readEntries.apply(this, args);
     }
     [dartx.readEntries]() {
       let completer = CompleterOfListOfEntry().new();
@@ -54262,93 +54262,93 @@
     get [_webkitVisibilityState]() {
       return this.webkitVisibilityState;
     }
-    [dartx.adoptNode](node) {
-      return this.adoptNode(node);
+    [dartx.adoptNode](...args) {
+      return this.adoptNode.apply(this, args);
     }
-    [_caretRangeFromPoint](x, y) {
-      return this.caretRangeFromPoint(x, y);
+    [_caretRangeFromPoint](...args) {
+      return this.caretRangeFromPoint.apply(this, args);
     }
-    [dartx.createDocumentFragment]() {
-      return this.createDocumentFragment();
+    [dartx.createDocumentFragment](...args) {
+      return this.createDocumentFragment.apply(this, args);
     }
-    [_createElement](localName_OR_tagName, typeExtension) {
-      return this.createElement(localName_OR_tagName, typeExtension);
+    [_createElement](...args) {
+      return this.createElement.apply(this, args);
     }
-    [_createElementNS](namespaceURI, qualifiedName, typeExtension) {
-      return this.createElementNS(namespaceURI, qualifiedName, typeExtension);
+    [_createElementNS](...args) {
+      return this.createElementNS.apply(this, args);
     }
-    [_createEvent](eventType) {
-      return this.createEvent(eventType);
+    [_createEvent](...args) {
+      return this.createEvent.apply(this, args);
     }
-    [dartx.createRange]() {
-      return this.createRange();
+    [dartx.createRange](...args) {
+      return this.createRange.apply(this, args);
     }
-    [_createTextNode](data) {
-      return this.createTextNode(data);
+    [_createTextNode](...args) {
+      return this.createTextNode.apply(this, args);
     }
     [_createTouch](window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force) {
       let target_1 = html$._convertDartToNative_EventTarget(target);
       return this[_createTouch_1](window, target_1, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force);
     }
-    [_createTouch_1](window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force) {
-      return this.createTouch(window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force);
+    [_createTouch_1](...args) {
+      return this.createTouch.apply(this, args);
     }
-    [_createTouchList](touches) {
-      return this.createTouchList(touches);
+    [_createTouchList](...args) {
+      return this.createTouchList.apply(this, args);
     }
-    [_elementFromPoint](x, y) {
-      return this.elementFromPoint(x, y);
+    [_elementFromPoint](...args) {
+      return this.elementFromPoint.apply(this, args);
     }
-    [dartx.elementsFromPoint](x, y) {
-      return this.elementsFromPoint(x, y);
+    [dartx.elementsFromPoint](...args) {
+      return this.elementsFromPoint.apply(this, args);
     }
-    [dartx.execCommand](commandId, showUI, value) {
-      return this.execCommand(commandId, showUI, value);
+    [dartx.execCommand](...args) {
+      return this.execCommand.apply(this, args);
     }
-    [dartx.exitFullscreen]() {
-      return this.exitFullscreen();
+    [dartx.exitFullscreen](...args) {
+      return this.exitFullscreen.apply(this, args);
     }
-    [dartx.exitPointerLock]() {
-      return this.exitPointerLock();
+    [dartx.exitPointerLock](...args) {
+      return this.exitPointerLock.apply(this, args);
     }
-    [_getCssCanvasContext](contextId, name, width, height) {
-      return this.getCSSCanvasContext(contextId, name, width, height);
+    [_getCssCanvasContext](...args) {
+      return this.getCSSCanvasContext.apply(this, args);
     }
-    [dartx.getElementsByClassName](classNames) {
-      return this.getElementsByClassName(classNames);
+    [dartx.getElementsByClassName](...args) {
+      return this.getElementsByClassName.apply(this, args);
     }
-    [dartx.getElementsByName](elementName) {
-      return this.getElementsByName(elementName);
+    [dartx.getElementsByName](...args) {
+      return this.getElementsByName.apply(this, args);
     }
-    [dartx.getElementsByTagName](localName) {
-      return this.getElementsByTagName(localName);
+    [dartx.getElementsByTagName](...args) {
+      return this.getElementsByTagName.apply(this, args);
     }
-    [dartx.importNode](node, deep) {
-      return this.importNode(node, deep);
+    [dartx.importNode](...args) {
+      return this.importNode.apply(this, args);
     }
-    [dartx.queryCommandEnabled](commandId) {
-      return this.queryCommandEnabled(commandId);
+    [dartx.queryCommandEnabled](...args) {
+      return this.queryCommandEnabled.apply(this, args);
     }
-    [dartx.queryCommandIndeterm](commandId) {
-      return this.queryCommandIndeterm(commandId);
+    [dartx.queryCommandIndeterm](...args) {
+      return this.queryCommandIndeterm.apply(this, args);
     }
-    [dartx.queryCommandState](commandId) {
-      return this.queryCommandState(commandId);
+    [dartx.queryCommandState](...args) {
+      return this.queryCommandState.apply(this, args);
     }
-    [dartx.queryCommandSupported](commandId) {
-      return this.queryCommandSupported(commandId);
+    [dartx.queryCommandSupported](...args) {
+      return this.queryCommandSupported.apply(this, args);
     }
-    [dartx.queryCommandValue](commandId) {
-      return this.queryCommandValue(commandId);
+    [dartx.queryCommandValue](...args) {
+      return this.queryCommandValue.apply(this, args);
     }
-    [dartx.transformDocumentToTreeView](noStyleMessage) {
-      return this.transformDocumentToTreeView(noStyleMessage);
+    [dartx.transformDocumentToTreeView](...args) {
+      return this.transformDocumentToTreeView.apply(this, args);
     }
-    [_webkitExitFullscreen]() {
-      return this.webkitExitFullscreen();
+    [_webkitExitFullscreen](...args) {
+      return this.webkitExitFullscreen.apply(this, args);
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
     get [_childElementCount]() {
       return this.childElementCount;
@@ -54362,11 +54362,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.Element.abortEvent.forTarget(this);
@@ -54901,8 +54901,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
     get [_childElementCount]() {
       return this.childElementCount;
@@ -54913,11 +54913,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
   };
   html$.DocumentFragment[dart.implements] = () => [html$.NonElementParentNode, html$.ParentNode];
@@ -55082,17 +55082,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.createDocument](namespaceURI, qualifiedName, doctype) {
-      return this.createDocument(namespaceURI, qualifiedName, doctype);
+    [dartx.createDocument](...args) {
+      return this.createDocument.apply(this, args);
     }
-    [dartx.createDocumentType](qualifiedName, publicId, systemId) {
-      return this.createDocumentType(qualifiedName, publicId, systemId);
+    [dartx.createDocumentType](...args) {
+      return this.createDocumentType.apply(this, args);
     }
-    [dartx.createHtmlDocument](title) {
-      return this.createHTMLDocument(title);
+    [dartx.createHtmlDocument](...args) {
+      return this.createHTMLDocument.apply(this, args);
     }
-    [dartx.hasFeature]() {
-      return this.hasFeature();
+    [dartx.hasFeature](...args) {
+      return this.hasFeature.apply(this, args);
     }
   };
   dart.setSignature(html$.DomImplementation, {
@@ -55112,8 +55112,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.next](value) {
-      return this.next(value);
+    [dartx.next](...args) {
+      return this.next.apply(this, args);
     }
   };
   dart.setSignature(html$.DomIterator, {
@@ -55230,26 +55230,26 @@
     get [dartx.m44]() {
       return this.m44;
     }
-    [dartx.multiply](other) {
-      return this.multiply(other);
+    [dartx.multiply](...args) {
+      return this.multiply.apply(this, args);
     }
-    [dartx.scale](scale, originX, originY) {
-      return this.scale(scale, originX, originY);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scale3d](scale, originX, originY, originZ) {
-      return this.scale3d(scale, originX, originY, originZ);
+    [dartx.scale3d](...args) {
+      return this.scale3d.apply(this, args);
     }
-    [dartx.scaleNonUniform](scaleX, scaleY, scaleZn, originX, originY, originZ) {
-      return this.scaleNonUniform(scaleX, scaleY, scaleZn, originX, originY, originZ);
+    [dartx.scaleNonUniform](...args) {
+      return this.scaleNonUniform.apply(this, args);
     }
-    [dartx.toFloat32Array]() {
-      return this.toFloat32Array();
+    [dartx.toFloat32Array](...args) {
+      return this.toFloat32Array.apply(this, args);
     }
-    [dartx.toFloat64Array]() {
-      return this.toFloat64Array();
+    [dartx.toFloat64Array](...args) {
+      return this.toFloat64Array.apply(this, args);
     }
-    [dartx.translate](tx, ty, tz) {
-      return this.translate(tx, ty, tz);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
   };
   dart.setSignature(html$.DomMatrixReadOnly, {
@@ -55495,23 +55495,23 @@
     set [dartx.m44](value) {
       this.m44 = value;
     }
-    [dartx.multiplySelf](other) {
-      return this.multiplySelf(other);
+    [dartx.multiplySelf](...args) {
+      return this.multiplySelf.apply(this, args);
     }
-    [dartx.preMultiplySelf](other) {
-      return this.preMultiplySelf(other);
+    [dartx.preMultiplySelf](...args) {
+      return this.preMultiplySelf.apply(this, args);
     }
-    [dartx.scale3dSelf](scale, originX, originY, originZ) {
-      return this.scale3dSelf(scale, originX, originY, originZ);
+    [dartx.scale3dSelf](...args) {
+      return this.scale3dSelf.apply(this, args);
     }
-    [dartx.scaleNonUniformSelf](scaleX, scaleY, scaleZ, originX, originY, originZ) {
-      return this.scaleNonUniformSelf(scaleX, scaleY, scaleZ, originX, originY, originZ);
+    [dartx.scaleNonUniformSelf](...args) {
+      return this.scaleNonUniformSelf.apply(this, args);
     }
-    [dartx.scaleSelf](scale, originX, originY) {
-      return this.scaleSelf(scale, originX, originY);
+    [dartx.scaleSelf](...args) {
+      return this.scaleSelf.apply(this, args);
     }
-    [dartx.translateSelf](tx, ty, tz) {
-      return this.translateSelf(tx, ty, tz);
+    [dartx.translateSelf](...args) {
+      return this.translateSelf.apply(this, args);
     }
   };
   dart.setSignature(html$.DomMatrix, {
@@ -55571,8 +55571,8 @@
     static _create_1() {
       return new DOMParser();
     }
-    [dartx.parseFromString](str, type) {
-      return this.parseFromString(str, type);
+    [dartx.parseFromString](...args) {
+      return this.parseFromString.apply(this, args);
     }
   };
   dart.setSignature(html$.DomParser, {
@@ -55891,20 +55891,20 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.add](tokens) {
-      return this.add(tokens);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.contains](token) {
-      return this.contains(token);
+    [dartx.contains](...args) {
+      return this.contains.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.remove](tokens) {
-      return this.remove(tokens);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
-    [dartx.toggle](token, force) {
-      return this.toggle(token, force);
+    [dartx.toggle](...args) {
+      return this.toggle.apply(this, args);
     }
   };
   dart.setSignature(html$.DomTokenList, {
@@ -56129,11 +56129,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.DomStringList[dart.implements] = () => [ListOfString()];
@@ -56857,11 +56857,11 @@
     set [dartx.width](value) {
       this.width = value;
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.EmbedElement, 'created');
@@ -56989,8 +56989,8 @@
     get [dartx.withCredentials]() {
       return this.withCredentials;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.EventSource.errorEvent.forTarget(this);
@@ -57105,8 +57105,8 @@
     static _create_2(type) {
       return new ExtendableEvent(type);
     }
-    [dartx.waitUntil](value) {
-      return this.waitUntil(value);
+    [dartx.waitUntil](...args) {
+      return this.waitUntil.apply(this, args);
     }
   };
   dart.setSignature(html$.ExtendableEvent, {
@@ -57186,8 +57186,8 @@
     get [dartx.request]() {
       return this.request;
     }
-    [dartx.respondWith](value) {
-      return this.respondWith(value);
+    [dartx.respondWith](...args) {
+      return this.respondWith.apply(this, args);
     }
   };
   dart.setSignature(html$.FetchEvent, {
@@ -57268,14 +57268,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.FieldSetElement, 'created');
@@ -57373,8 +57373,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_createWriter](successCallback, errorCallback) {
-      return this.createWriter(successCallback, errorCallback);
+    [_createWriter](...args) {
+      return this.createWriter.apply(this, args);
     }
     [dartx.createWriter]() {
       let completer = CompleterOfFileWriter().new();
@@ -57385,8 +57385,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_file](successCallback, errorCallback) {
-      return this.file(successCallback, errorCallback);
+    [_file](...args) {
+      return this.file.apply(this, args);
     }
     [dartx.file]() {
       let completer = CompleterOfFile().new();
@@ -57503,8 +57503,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.FileList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfFile()];
@@ -57563,17 +57563,17 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.readAsArrayBuffer](blob) {
-      return this.readAsArrayBuffer(blob);
+    [dartx.readAsArrayBuffer](...args) {
+      return this.readAsArrayBuffer.apply(this, args);
     }
-    [dartx.readAsDataUrl](blob) {
-      return this.readAsDataURL(blob);
+    [dartx.readAsDataUrl](...args) {
+      return this.readAsDataURL.apply(this, args);
     }
-    [dartx.readAsText](blob, label) {
-      return this.readAsText(blob, label);
+    [dartx.readAsText](...args) {
+      return this.readAsText.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.FileReader.abortEvent.forTarget(this);
@@ -57732,17 +57732,17 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.seek](position) {
-      return this.seek(position);
+    [dartx.seek](...args) {
+      return this.seek.apply(this, args);
     }
-    [dartx.truncate](size) {
-      return this.truncate(size);
+    [dartx.truncate](...args) {
+      return this.truncate.apply(this, args);
     }
-    [dartx.write](data) {
-      return this.write(data);
+    [dartx.write](...args) {
+      return this.write.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.FileWriter.abortEvent.forTarget(this);
@@ -57943,8 +57943,8 @@
     set [dartx.weight](value) {
       this.weight = value;
     }
-    [dartx.load]() {
-      return this.load();
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
   };
   dart.setSignature(html$.FontFace, {
@@ -57991,23 +57991,23 @@
     get [dartx.status]() {
       return this.status;
     }
-    [dartx.add](fontFace) {
-      return this.add(fontFace);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.check](font, text) {
-      return this.check(font, text);
+    [dartx.check](...args) {
+      return this.check.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.delete](fontFace) {
-      return this.delete(fontFace);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.forEach](callback, thisArg) {
-      return this.forEach(callback, thisArg);
+    [dartx.forEach](...args) {
+      return this.forEach.apply(this, args);
     }
-    [dartx.has](fontFace) {
-      return this.has(fontFace);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
   };
   dart.setSignature(html$.FontFaceSet, {
@@ -58072,26 +58072,26 @@
     static get supported() {
       return !!window.FormData;
     }
-    [dartx.append](name, value) {
-      return this.append(name, value);
+    [dartx.append](...args) {
+      return this.append.apply(this, args);
     }
-    [dartx.appendBlob](name, value, filename) {
-      return this.append(name, value, filename);
+    [dartx.appendBlob](...args) {
+      return this.append.apply(this, args);
     }
-    [dartx.delete](name) {
-      return this.delete(name);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.get](name) {
-      return this.get(name);
+    [dartx.get](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](name) {
-      return this.getAll(name);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.has](name) {
-      return this.has(name);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
-    [dartx.set](name, value, filename) {
-      return this.set(name, value, filename);
+    [dartx.set](...args) {
+      return this.set.apply(this, args);
     }
   };
   dart.setSignature(html$.FormData, {
@@ -58212,31 +58212,31 @@
     set [dartx.target](value) {
       this.target = value;
     }
-    [__getter__](name) {
-      return this.__getter__(name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
     [dartx.requestAutocomplete](details) {
       let details_1 = html_common.convertDartToNative_Dictionary(details);
       this[_requestAutocomplete_1](details_1);
       return;
     }
-    [_requestAutocomplete_1](details) {
-      return this.requestAutocomplete(details);
+    [_requestAutocomplete_1](...args) {
+      return this.requestAutocomplete.apply(this, args);
     }
-    [dartx.reset]() {
-      return this.reset();
+    [dartx.reset](...args) {
+      return this.reset.apply(this, args);
     }
-    [dartx.submit]() {
-      return this.submit();
+    [dartx.submit](...args) {
+      return this.submit.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.FormElement, 'created');
@@ -58389,14 +58389,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getRegisteredRegions]() {
-      return this.getRegisteredRegions();
+    [dartx.getRegisteredRegions](...args) {
+      return this.getRegisteredRegions.apply(this, args);
     }
-    [dartx.registerRegion](region) {
-      return this.registerRegion(region);
+    [dartx.registerRegion](...args) {
+      return this.registerRegion.apply(this, args);
     }
-    [dartx.unregisterRegion](regionId) {
-      return this.unregisterRegion(regionId);
+    [dartx.unregisterRegion](...args) {
+      return this.unregisterRegion.apply(this, args);
     }
   };
   dart.setSignature(html$.Geofencing, {
@@ -58516,8 +58516,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_clearWatch](watchID) {
-      return this.clearWatch(watchID);
+    [_clearWatch](...args) {
+      return this.clearWatch.apply(this, args);
     }
     [_getCurrentPosition](successCallback, errorCallback, options) {
       if (errorCallback === void 0) errorCallback = null;
@@ -58534,14 +58534,14 @@
       this[_getCurrentPosition_3](successCallback);
       return;
     }
-    [_getCurrentPosition_1](successCallback, errorCallback, options) {
-      return this.getCurrentPosition(successCallback, errorCallback, options);
+    [_getCurrentPosition_1](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
-    [_getCurrentPosition_2](successCallback, errorCallback) {
-      return this.getCurrentPosition(successCallback, errorCallback);
+    [_getCurrentPosition_2](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
-    [_getCurrentPosition_3](successCallback) {
-      return this.getCurrentPosition(successCallback);
+    [_getCurrentPosition_3](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
     [_watchPosition](successCallback, errorCallback, options) {
       if (errorCallback === void 0) errorCallback = null;
@@ -58555,14 +58555,14 @@
       }
       return this[_watchPosition_3](successCallback);
     }
-    [_watchPosition_1](successCallback, errorCallback, options) {
-      return this.watchPosition(successCallback, errorCallback, options);
+    [_watchPosition_1](...args) {
+      return this.watchPosition.apply(this, args);
     }
-    [_watchPosition_2](successCallback, errorCallback) {
-      return this.watchPosition(successCallback, errorCallback);
+    [_watchPosition_2](...args) {
+      return this.watchPosition.apply(this, args);
     }
-    [_watchPosition_3](successCallback) {
-      return this.watchPosition(successCallback);
+    [_watchPosition_3](...args) {
+      return this.watchPosition.apply(this, args);
     }
   };
   dart.setSignature(html$.Geolocation, {
@@ -59233,8 +59233,8 @@
     get [dartx.oldUrl]() {
       return this.oldURL;
     }
-    [_initHashChangeEvent](type, canBubble, cancelable, oldURL, newURL) {
-      return this.initHashChangeEvent(type, canBubble, cancelable, oldURL, newURL);
+    [_initHashChangeEvent](...args) {
+      return this.initHashChangeEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.HashChangeEvent, {
@@ -59401,14 +59401,14 @@
     get [_get_state]() {
       return this.state;
     }
-    [dartx.back]() {
-      return this.back();
+    [dartx.back](...args) {
+      return this.back.apply(this, args);
     }
-    [dartx.forward]() {
-      return this.forward();
+    [dartx.forward](...args) {
+      return this.forward.apply(this, args);
     }
-    [dartx.go](delta) {
-      return this.go(delta);
+    [dartx.go](...args) {
+      return this.go.apply(this, args);
     }
     [dartx.pushState](data, title, url, options) {
       if (options === void 0) options = null;
@@ -59422,11 +59422,11 @@
       this[_pushState_2](data_1, title, url);
       return;
     }
-    [_pushState_1](data, title, url, options) {
-      return this.pushState(data, title, url, options);
+    [_pushState_1](...args) {
+      return this.pushState.apply(this, args);
     }
-    [_pushState_2](data, title, url) {
-      return this.pushState(data, title, url);
+    [_pushState_2](...args) {
+      return this.pushState.apply(this, args);
     }
     [dartx.replaceState](data, title, url, options) {
       if (options === void 0) options = null;
@@ -59440,11 +59440,11 @@
       this[_replaceState_2](data_1, title, url);
       return;
     }
-    [_replaceState_1](data, title, url, options) {
-      return this.replaceState(data, title, url, options);
+    [_replaceState_1](...args) {
+      return this.replaceState.apply(this, args);
     }
-    [_replaceState_2](data, title, url) {
-      return this.replaceState(data, title, url);
+    [_replaceState_2](...args) {
+      return this.replaceState.apply(this, args);
     }
   };
   html$.History[dart.implements] = () => [html$.HistoryBase];
@@ -59509,11 +59509,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getEyeParameters](whichEye) {
-      return this.getEyeParameters(whichEye);
+    [dartx.getEyeParameters](...args) {
+      return this.getEyeParameters.apply(this, args);
     }
-    [dartx.setFieldOfView](leftFov, rightFov) {
-      return this.setFieldOfView(leftFov, rightFov);
+    [dartx.setFieldOfView](...args) {
+      return this.setFieldOfView.apply(this, args);
     }
   };
   dart.setSignature(html$.HmdvrDevice, {
@@ -59578,11 +59578,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   html$.HtmlCollection[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -59748,11 +59748,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   dart.setSignature(html$.HtmlFormControlsCollection, {
@@ -59784,8 +59784,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.HtmlOptionsCollection, {
@@ -60038,8 +60038,8 @@
       }
       return headers;
     }
-    [dartx.open](method, url, opts) {
-      return this.open(method, url, opts);
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -60095,23 +60095,23 @@
     set [dartx.withCredentials](value) {
       this.withCredentials = value;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.getAllResponseHeaders]() {
-      return this.getAllResponseHeaders();
+    [dartx.getAllResponseHeaders](...args) {
+      return this.getAllResponseHeaders.apply(this, args);
     }
-    [dartx.getResponseHeader](name) {
-      return this.getResponseHeader(name);
+    [dartx.getResponseHeader](...args) {
+      return this.getResponseHeader.apply(this, args);
     }
-    [dartx.overrideMimeType](mime) {
-      return this.overrideMimeType(mime);
+    [dartx.overrideMimeType](...args) {
+      return this.overrideMimeType.apply(this, args);
     }
-    [dartx.send](body_OR_data) {
-      return this.send(body_OR_data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.setRequestHeader](name, value) {
-      return this.setRequestHeader(name, value);
+    [dartx.setRequestHeader](...args) {
+      return this.setRequestHeader.apply(this, args);
     }
     get [dartx.onReadyStateChange]() {
       return html$.HttpRequest.readyStateChangeEvent.forTarget(this);
@@ -60513,8 +60513,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.inspect](objectId, hints) {
-      return this.inspect(objectId, hints);
+    [dartx.inspect](...args) {
+      return this.inspect.apply(this, args);
     }
   };
   dart.setSignature(html$.InjectedScriptHost, {
@@ -60977,29 +60977,29 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.select]() {
-      return this.select();
+    [dartx.select](...args) {
+      return this.select.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
-    [dartx.setRangeText](replacement, opts) {
-      return this.setRangeText(replacement, opts);
+    [dartx.setRangeText](...args) {
+      return this.setRangeText.apply(this, args);
     }
-    [dartx.setSelectionRange](start, end, direction) {
-      return this.setSelectionRange(start, end, direction);
+    [dartx.setSelectionRange](...args) {
+      return this.setSelectionRange.apply(this, args);
     }
-    [dartx.stepDown](n) {
-      return this.stepDown(n);
+    [dartx.stepDown](...args) {
+      return this.stepDown.apply(this, args);
     }
-    [dartx.stepUp](n) {
-      return this.stepUp(n);
+    [dartx.stepUp](...args) {
+      return this.stepUp.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.InputElement, 'created');
@@ -62294,8 +62294,8 @@
     get [dartx.shiftKey]() {
       return this.shiftKey;
     }
-    [dartx.getModifierState](keyArg) {
-      return this.getModifierState(keyArg);
+    [dartx.getModifierState](...args) {
+      return this.getModifierState.apply(this, args);
     }
   };
   dart.setSignature(html$.KeyboardEvent, {
@@ -62470,14 +62470,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.KeygenElement, 'created');
@@ -62802,14 +62802,14 @@
     set [dartx.search](value) {
       this.search = value;
     }
-    [dartx.assign](url) {
-      return this.assign(url);
+    [dartx.assign](...args) {
+      return this.assign.apply(this, args);
     }
-    [dartx.reload]() {
-      return this.reload();
+    [dartx.reload](...args) {
+      return this.reload.apply(this, args);
     }
-    [dartx.replace](url) {
-      return this.replace(url);
+    [dartx.replace](...args) {
+      return this.replace.apply(this, args);
     }
     get [dartx.origin]() {
       if ("origin" in this) {
@@ -62956,14 +62956,14 @@
     set [dartx.volume](value) {
       this.volume = value;
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.unpause]() {
-      return this.unpause();
+    [dartx.unpause](...args) {
+      return this.unpause.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaController, {
@@ -63035,15 +63035,15 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.enumerateDevices]() {
-      return this.enumerateDevices();
+    [dartx.enumerateDevices](...args) {
+      return this.enumerateDevices.apply(this, args);
     }
     [dartx.getUserMedia](options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_getUserMedia_1](options_1);
     }
-    [_getUserMedia_1](options) {
-      return this.getUserMedia(options);
+    [_getUserMedia_1](...args) {
+      return this.getUserMedia.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaDevices, {
@@ -63305,20 +63305,20 @@
     get [dartx.sessionId]() {
       return this.sessionId;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.generateRequest](initDataType, initData) {
-      return this.generateRequest(initDataType, initData);
+    [dartx.generateRequest](...args) {
+      return this.generateRequest.apply(this, args);
     }
-    [dartx.load](sessionId) {
-      return this.load(sessionId);
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
-    [dartx.remove]() {
-      return this.remove();
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
-    [_update$](response) {
-      return this.update(response);
+    [_update$](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeySession, {
@@ -63367,14 +63367,14 @@
     get [dartx.keySystem]() {
       return this.keySystem;
     }
-    [dartx.createMediaKeys]() {
-      return this.createMediaKeys();
+    [dartx.createMediaKeys](...args) {
+      return this.createMediaKeys.apply(this, args);
     }
     [dartx.getConfiguration]() {
       return html_common.convertNativeToDart_Dictionary(this[_getConfiguration_1]());
     }
-    [_getConfiguration_1]() {
-      return this.getConfiguration();
+    [_getConfiguration_1](...args) {
+      return this.getConfiguration.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeySystemAccess, {
@@ -63395,11 +63395,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_createSession](sessionType) {
-      return this.createSession(sessionType);
+    [_createSession](...args) {
+      return this.createSession.apply(this, args);
     }
-    [dartx.setServerCertificate](serverCertificate) {
-      return this.setServerCertificate(serverCertificate);
+    [dartx.setServerCertificate](...args) {
+      return this.setServerCertificate.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeys, {
@@ -63430,14 +63430,14 @@
     set [dartx.mediaText](value) {
       this.mediaText = value;
     }
-    [dartx.appendMedium](medium) {
-      return this.appendMedium(medium);
+    [dartx.appendMedium](...args) {
+      return this.appendMedium.apply(this, args);
     }
-    [dartx.deleteMedium](medium) {
-      return this.deleteMedium(medium);
+    [dartx.deleteMedium](...args) {
+      return this.deleteMedium.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaList, {
@@ -63470,11 +63470,11 @@
     get [dartx.media]() {
       return this.media;
     }
-    [dartx.addListener](listener) {
-      return this.addListener(listener);
+    [dartx.addListener](...args) {
+      return this.addListener.apply(this, args);
     }
-    [dartx.removeListener](listener) {
-      return this.removeListener(listener);
+    [dartx.removeListener](...args) {
+      return this.removeListener.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.MediaQueryList.changeEvent.forTarget(this);
@@ -63558,11 +63558,11 @@
     static _create_1() {
       return new MediaSession();
     }
-    [dartx.activate]() {
-      return this.activate();
+    [dartx.activate](...args) {
+      return this.activate.apply(this, args);
     }
-    [dartx.deactivate]() {
-      return this.deactivate();
+    [dartx.deactivate](...args) {
+      return this.deactivate.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaSession, {
@@ -63615,14 +63615,14 @@
     get [dartx.sourceBuffers]() {
       return this.sourceBuffers;
     }
-    [dartx.addSourceBuffer](type) {
-      return this.addSourceBuffer(type);
+    [dartx.addSourceBuffer](...args) {
+      return this.addSourceBuffer.apply(this, args);
     }
-    [dartx.endOfStream](error) {
-      return this.endOfStream(error);
+    [dartx.endOfStream](...args) {
+      return this.endOfStream.apply(this, args);
     }
-    [dartx.removeSourceBuffer](buffer) {
-      return this.removeSourceBuffer(buffer);
+    [dartx.removeSourceBuffer](...args) {
+      return this.removeSourceBuffer.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaSource, {
@@ -63704,29 +63704,29 @@
     get [dartx.label]() {
       return this.label;
     }
-    [dartx.addTrack](track) {
-      return this.addTrack(track);
+    [dartx.addTrack](...args) {
+      return this.addTrack.apply(this, args);
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
-    [dartx.getAudioTracks]() {
-      return this.getAudioTracks();
+    [dartx.getAudioTracks](...args) {
+      return this.getAudioTracks.apply(this, args);
     }
-    [dartx.getTrackById](trackId) {
-      return this.getTrackById(trackId);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
-    [dartx.getTracks]() {
-      return this.getTracks();
+    [dartx.getTracks](...args) {
+      return this.getTracks.apply(this, args);
     }
-    [dartx.getVideoTracks]() {
-      return this.getVideoTracks();
+    [dartx.getVideoTracks](...args) {
+      return this.getVideoTracks.apply(this, args);
     }
-    [dartx.removeTrack](track) {
-      return this.removeTrack(track);
+    [dartx.removeTrack](...args) {
+      return this.removeTrack.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onAddTrack]() {
       return html$.MediaStream.addTrackEvent.forTarget(this);
@@ -63872,8 +63872,8 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
     static getSources() {
       let completer = CompleterOfListOfSourceInfo().new();
@@ -63882,8 +63882,8 @@
       }, ListOfSourceInfoTovoid()));
       return completer.future;
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onEnded]() {
       return html$.MediaStreamTrack.endedEvent.forTarget(this);
@@ -64194,8 +64194,8 @@
     get [_get_source]() {
       return this.source;
     }
-    [_initMessageEvent](typeArg, canBubbleArg, cancelableArg, dataArg, originArg, lastEventIdArg, sourceArg, portsArg) {
-      return this.initMessageEvent(typeArg, canBubbleArg, cancelableArg, dataArg, originArg, lastEventIdArg, sourceArg, portsArg);
+    [_initMessageEvent](...args) {
+      return this.initMessageEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.MessageEvent, {
@@ -64231,8 +64231,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -64245,14 +64245,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.start]() {
-      return this.start();
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.MessagePort.messageEvent.forTarget(this);
@@ -64546,11 +64546,11 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.open]() {
-      return this.open();
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
   };
   dart.setSignature(html$.MidiPort, {
@@ -64660,8 +64660,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.send](data, timestamp) {
-      return this.send(data, timestamp);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
   };
   dart.setSignature(html$.MidiOutput, {
@@ -64772,11 +64772,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   html$.MimeTypeArray[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfMimeType()];
@@ -64983,8 +64983,8 @@
       this[_initMouseEvent_1](type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget_1);
       return;
     }
-    [_initMouseEvent_1](type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget) {
-      return this.initMouseEvent(type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget);
+    [_initMouseEvent_1](...args) {
+      return this.initMouseEvent.apply(this, args);
     }
     get [dartx.client]() {
       return new (PointOfnum())(this[_clientX], this[_clientY]);
@@ -65077,19 +65077,19 @@
     'observe'
   ]);
   html$.MutationObserver = class MutationObserver extends _interceptors.Interceptor {
-    [dartx.disconnect]() {
-      return this.disconnect();
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
     [_observe](target, options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       this[_observe_1](target, options_1);
       return;
     }
-    [_observe_1](target, options) {
-      return this.observe(target, options);
+    [_observe_1](...args) {
+      return this.observe.apply(this, args);
     }
-    [dartx.takeRecords]() {
-      return this.takeRecords();
+    [dartx.takeRecords](...args) {
+      return this.takeRecords.apply(this, args);
     }
     static get supported() {
       return !!(window.MutationObserver || window.WebKitMutationObserver);
@@ -65127,8 +65127,8 @@
     static _fixupList(list) {
       return list;
     }
-    [_call](target, options) {
-      return this.observe(target, options);
+    [_call](...args) {
+      return this.observe.apply(this, args);
     }
     static new(callback) {
       0;
@@ -65282,8 +65282,8 @@
         this.getUserMedia = this.getUserMedia || this.webkitGetUserMedia || this.mozGetUserMedia || this.msGetUserMedia;
       }
     }
-    [_getUserMedia](options, success, error) {
-      return this.getUserMedia(options, success, error);
+    [_getUserMedia](...args) {
+      return this.getUserMedia.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -65342,17 +65342,17 @@
     get [dartx.temporaryStorage]() {
       return this.webkitTemporaryStorage;
     }
-    [dartx.getBattery]() {
-      return this.getBattery();
+    [dartx.getBattery](...args) {
+      return this.getBattery.apply(this, args);
     }
-    [dartx.getGamepads]() {
-      return this.getGamepads();
+    [dartx.getGamepads](...args) {
+      return this.getGamepads.apply(this, args);
     }
-    [dartx.getVRDevices]() {
-      return this.getVRDevices();
+    [dartx.getVRDevices](...args) {
+      return this.getVRDevices.apply(this, args);
     }
-    [dartx.registerProtocolHandler](scheme, url, title) {
-      return this.registerProtocolHandler(scheme, url, title);
+    [dartx.registerProtocolHandler](...args) {
+      return this.registerProtocolHandler.apply(this, args);
     }
     [dartx.requestMidiAccess](options) {
       if (options === void 0) options = null;
@@ -65362,17 +65362,17 @@
       }
       return this[_requestMidiAccess_2]();
     }
-    [_requestMidiAccess_1](options) {
-      return this.requestMIDIAccess(options);
+    [_requestMidiAccess_1](...args) {
+      return this.requestMIDIAccess.apply(this, args);
     }
-    [_requestMidiAccess_2]() {
-      return this.requestMIDIAccess();
+    [_requestMidiAccess_2](...args) {
+      return this.requestMIDIAccess.apply(this, args);
     }
-    [dartx.requestMediaKeySystemAccess](keySystem, supportedConfigurations) {
-      return this.requestMediaKeySystemAccess(keySystem, supportedConfigurations);
+    [dartx.requestMediaKeySystemAccess](...args) {
+      return this.requestMediaKeySystemAccess.apply(this, args);
     }
-    [dartx.sendBeacon](url, data) {
-      return this.sendBeacon(url, data);
+    [dartx.sendBeacon](...args) {
+      return this.sendBeacon.apply(this, args);
     }
     get [dartx.hardwareConcurrency]() {
       return this.hardwareConcurrency;
@@ -65407,8 +65407,8 @@
     get [dartx.cookieEnabled]() {
       return this.cookieEnabled;
     }
-    [dartx.getStorageUpdates]() {
-      return this.getStorageUpdates();
+    [dartx.getStorageUpdates](...args) {
+      return this.getStorageUpdates.apply(this, args);
     }
   };
   html$.Navigator[dart.implements] = () => [html$.NavigatorStorageUtils, html$.NavigatorCpu, html$.NavigatorLanguage, html$.NavigatorOnLine, html$.NavigatorID];
@@ -65629,8 +65629,8 @@
     get [dartx.cookieEnabled]() {
       return this.cookieEnabled;
     }
-    [dartx.getStorageUpdates]() {
-      return this.getStorageUpdates();
+    [dartx.getStorageUpdates](...args) {
+      return this.getStorageUpdates.apply(this, args);
     }
   };
   dart.setSignature(html$.NavigatorStorageUtils, {
@@ -65937,14 +65937,14 @@
     get [dartx.whatToShow]() {
       return this.whatToShow;
     }
-    [dartx.detach]() {
-      return this.detach();
+    [dartx.detach](...args) {
+      return this.detach.apply(this, args);
     }
-    [dartx.nextNode]() {
-      return this.nextNode();
+    [dartx.nextNode](...args) {
+      return this.nextNode.apply(this, args);
     }
-    [dartx.previousNode]() {
-      return this.previousNode();
+    [dartx.previousNode](...args) {
+      return this.previousNode.apply(this, args);
     }
   };
   dart.setSignature(html$.NodeIterator, {
@@ -66017,8 +66017,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.NodeList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -66070,8 +66070,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
   };
   dart.setSignature(html$.NonElementParentNode, {
@@ -66161,8 +66161,8 @@
     get [dartx.vibrate]() {
       return this.vibrate;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     static requestPermission() {
       let completer = CompleterOfString().new();
@@ -66415,20 +66415,20 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ObjectElement, 'created');
@@ -66702,14 +66702,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.OutputElement, 'created');
@@ -66943,35 +66943,35 @@
     static _create_3(path_OR_text) {
       return new Path2D(path_OR_text);
     }
-    [dartx.addPath](path, transform) {
-      return this.addPath(path, transform);
+    [dartx.addPath](...args) {
+      return this.addPath.apply(this, args);
     }
-    [dartx.arc](x, y, radius, startAngle, endAngle, anticlockwise) {
-      return this.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+    [dartx.arc](...args) {
+      return this.arc.apply(this, args);
     }
-    [dartx.arcTo](x1, y1, x2, y2, radius) {
-      return this.arcTo(x1, y1, x2, y2, radius);
+    [dartx.arcTo](...args) {
+      return this.arcTo.apply(this, args);
     }
-    [dartx.bezierCurveTo](cp1x, cp1y, cp2x, cp2y, x, y) {
-      return this.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);
+    [dartx.bezierCurveTo](...args) {
+      return this.bezierCurveTo.apply(this, args);
     }
-    [dartx.closePath]() {
-      return this.closePath();
+    [dartx.closePath](...args) {
+      return this.closePath.apply(this, args);
     }
-    [dartx.ellipse](x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
-      return this.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);
+    [dartx.ellipse](...args) {
+      return this.ellipse.apply(this, args);
     }
-    [dartx.lineTo](x, y) {
-      return this.lineTo(x, y);
+    [dartx.lineTo](...args) {
+      return this.lineTo.apply(this, args);
     }
-    [dartx.moveTo](x, y) {
-      return this.moveTo(x, y);
+    [dartx.moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.quadraticCurveTo](cpx, cpy, x, y) {
-      return this.quadraticCurveTo(cpx, cpy, x, y);
+    [dartx.quadraticCurveTo](...args) {
+      return this.quadraticCurveTo.apply(this, args);
     }
-    [dartx.rect](x, y, width, height) {
-      return this.rect(x, y, width, height);
+    [dartx.rect](...args) {
+      return this.rect.apply(this, args);
     }
   };
   html$.Path2D[dart.implements] = () => [html$._CanvasPathMethods];
@@ -67034,41 +67034,41 @@
     get [dartx.timing]() {
       return this.timing;
     }
-    [dartx.clearFrameTimings]() {
-      return this.clearFrameTimings();
+    [dartx.clearFrameTimings](...args) {
+      return this.clearFrameTimings.apply(this, args);
     }
-    [dartx.clearMarks](markName) {
-      return this.clearMarks(markName);
+    [dartx.clearMarks](...args) {
+      return this.clearMarks.apply(this, args);
     }
-    [dartx.clearMeasures](measureName) {
-      return this.clearMeasures(measureName);
+    [dartx.clearMeasures](...args) {
+      return this.clearMeasures.apply(this, args);
     }
-    [dartx.getEntries]() {
-      return this.getEntries();
+    [dartx.getEntries](...args) {
+      return this.getEntries.apply(this, args);
     }
-    [dartx.getEntriesByName](name, entryType) {
-      return this.getEntriesByName(name, entryType);
+    [dartx.getEntriesByName](...args) {
+      return this.getEntriesByName.apply(this, args);
     }
-    [dartx.getEntriesByType](entryType) {
-      return this.getEntriesByType(entryType);
+    [dartx.getEntriesByType](...args) {
+      return this.getEntriesByType.apply(this, args);
     }
-    [dartx.mark](markName) {
-      return this.mark(markName);
+    [dartx.mark](...args) {
+      return this.mark.apply(this, args);
     }
-    [dartx.measure](measureName, startMark, endMark) {
-      return this.measure(measureName, startMark, endMark);
+    [dartx.measure](...args) {
+      return this.measure.apply(this, args);
     }
-    [dartx.now]() {
-      return this.now();
+    [dartx.now](...args) {
+      return this.now.apply(this, args);
     }
-    [dartx.setFrameTimingBufferSize](maxSize) {
-      return this.setFrameTimingBufferSize(maxSize);
+    [dartx.setFrameTimingBufferSize](...args) {
+      return this.setFrameTimingBufferSize.apply(this, args);
     }
-    [dartx.clearResourceTimings]() {
-      return this.webkitClearResourceTimings();
+    [dartx.clearResourceTimings](...args) {
+      return this.webkitClearResourceTimings.apply(this, args);
     }
-    [dartx.setResourceTimingBufferSize](maxSize) {
-      return this.webkitSetResourceTimingBufferSize(maxSize);
+    [dartx.setResourceTimingBufferSize](...args) {
+      return this.webkitSetResourceTimingBufferSize.apply(this, args);
     }
     get [dartx.onResourceTimingBufferFull]() {
       return html$.Performance.resourceTimingBufferFullEvent.forTarget(this);
@@ -67461,14 +67461,14 @@
     get [dartx.minPossiblePeriod]() {
       return this.minPossiblePeriod;
     }
-    [dartx.getRegistration](tag) {
-      return this.getRegistration(tag);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
-    [dartx.permissionState]() {
-      return this.permissionState();
+    [dartx.permissionState](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.register](options) {
       if (options === void 0) options = null;
@@ -67478,11 +67478,11 @@
       }
       return this[_register_2]();
     }
-    [_register_1](options) {
-      return this.register(options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2]() {
-      return this.register();
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
   };
   dart.setSignature(html$.PeriodicSyncManager, {
@@ -67521,8 +67521,8 @@
     get [dartx.tag]() {
       return this.tag;
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
   };
   dart.setSignature(html$.PeriodicSyncRegistration, {
@@ -67577,8 +67577,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.query](permission) {
-      return this.query(permission);
+    [dartx.query](...args) {
+      return this.query.apply(this, args);
     }
   };
   dart.setSignature(html$.Permissions, {
@@ -67626,11 +67626,11 @@
     get [dartx.name]() {
       return this.name;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   dart.setSignature(html$.Plugin, {
@@ -67702,14 +67702,14 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.refresh](reload) {
-      return this.refresh(reload);
+    [dartx.refresh](...args) {
+      return this.refresh.apply(this, args);
     }
   };
   html$.PluginArray[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfPlugin()];
@@ -67758,8 +67758,8 @@
     set [dartx.message](value) {
       this.message = value;
     }
-    [dartx.createdCallback]() {
-      return this.createdCallback();
+    [dartx.createdCallback](...args) {
+      return this.createdCallback.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.PluginPlaceholderElement, 'created');
@@ -67934,14 +67934,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getImmediateState]() {
-      return this.getImmediateState();
+    [dartx.getImmediateState](...args) {
+      return this.getImmediateState.apply(this, args);
     }
-    [dartx.getState]() {
-      return this.getState();
+    [dartx.getState](...args) {
+      return this.getState.apply(this, args);
     }
-    [dartx.resetSensor]() {
-      return this.resetSensor();
+    [dartx.resetSensor](...args) {
+      return this.resetSensor.apply(this, args);
     }
   };
   dart.setSignature(html$.PositionSensorVRDevice, {
@@ -67986,14 +67986,14 @@
     get [dartx.session]() {
       return this.session;
     }
-    [dartx.getAvailability](url) {
-      return this.getAvailability(url);
+    [dartx.getAvailability](...args) {
+      return this.getAvailability.apply(this, args);
     }
-    [dartx.joinSession](url, presentationId) {
-      return this.joinSession(url, presentationId);
+    [dartx.joinSession](...args) {
+      return this.joinSession.apply(this, args);
     }
-    [dartx.startSession](url) {
-      return this.startSession(url);
+    [dartx.startSession](...args) {
+      return this.startSession.apply(this, args);
     }
   };
   dart.setSignature(html$.Presentation, {
@@ -68057,11 +68057,11 @@
     get [dartx.state]() {
       return this.state;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data_OR_message) {
-      return this.send(data_OR_message);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.PresentationSession.messageEvent.forTarget(this);
@@ -68314,8 +68314,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getSubscription]() {
-      return this.getSubscription();
+    [dartx.getSubscription](...args) {
+      return this.getSubscription.apply(this, args);
     }
     [dartx.permissionState](options) {
       if (options === void 0) options = null;
@@ -68325,11 +68325,11 @@
       }
       return this[_permissionState_2]();
     }
-    [_permissionState_1](options) {
-      return this.permissionState(options);
+    [_permissionState_1](...args) {
+      return this.permissionState.apply(this, args);
     }
-    [_permissionState_2]() {
-      return this.permissionState();
+    [_permissionState_2](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.subscribe](options) {
       if (options === void 0) options = null;
@@ -68339,11 +68339,11 @@
       }
       return this[_subscribe_2]();
     }
-    [_subscribe_1](options) {
-      return this.subscribe(options);
+    [_subscribe_1](...args) {
+      return this.subscribe.apply(this, args);
     }
-    [_subscribe_2]() {
-      return this.subscribe();
+    [_subscribe_2](...args) {
+      return this.subscribe.apply(this, args);
     }
   };
   dart.setSignature(html$.PushManager, {
@@ -68375,17 +68375,17 @@
     static _create_1(message) {
       return new PushMessageData(message);
     }
-    [dartx.arrayBuffer]() {
-      return this.arrayBuffer();
+    [dartx.arrayBuffer](...args) {
+      return this.arrayBuffer.apply(this, args);
     }
-    [dartx.blob]() {
-      return this.blob();
+    [dartx.blob](...args) {
+      return this.blob.apply(this, args);
     }
-    [dartx.json]() {
-      return this.json();
+    [dartx.json](...args) {
+      return this.json.apply(this, args);
     }
-    [dartx.text]() {
-      return this.text();
+    [dartx.text](...args) {
+      return this.text.apply(this, args);
     }
   };
   dart.setSignature(html$.PushMessageData, {
@@ -68414,8 +68414,8 @@
     get [dartx.endpoint]() {
       return this.endpoint;
     }
-    [dartx.unsubscribe]() {
-      return this.unsubscribe();
+    [dartx.unsubscribe](...args) {
+      return this.unsubscribe.apply(this, args);
     }
   };
   dart.setSignature(html$.PushSubscription, {
@@ -68517,74 +68517,74 @@
     get [dartx.startOffset]() {
       return this.startOffset;
     }
-    [dartx.cloneContents]() {
-      return this.cloneContents();
+    [dartx.cloneContents](...args) {
+      return this.cloneContents.apply(this, args);
     }
-    [dartx.cloneRange]() {
-      return this.cloneRange();
+    [dartx.cloneRange](...args) {
+      return this.cloneRange.apply(this, args);
     }
-    [dartx.collapse](toStart) {
-      return this.collapse(toStart);
+    [dartx.collapse](...args) {
+      return this.collapse.apply(this, args);
     }
-    [dartx.compareBoundaryPoints](how, sourceRange) {
-      return this.compareBoundaryPoints(how, sourceRange);
+    [dartx.compareBoundaryPoints](...args) {
+      return this.compareBoundaryPoints.apply(this, args);
     }
-    [dartx.comparePoint](node, offset) {
-      return this.comparePoint(node, offset);
+    [dartx.comparePoint](...args) {
+      return this.comparePoint.apply(this, args);
     }
-    [dartx.createContextualFragment](fragment) {
-      return this.createContextualFragment(fragment);
+    [dartx.createContextualFragment](...args) {
+      return this.createContextualFragment.apply(this, args);
     }
-    [dartx.deleteContents]() {
-      return this.deleteContents();
+    [dartx.deleteContents](...args) {
+      return this.deleteContents.apply(this, args);
     }
-    [dartx.detach]() {
-      return this.detach();
+    [dartx.detach](...args) {
+      return this.detach.apply(this, args);
     }
-    [dartx.expand](unit) {
-      return this.expand(unit);
+    [dartx.expand](...args) {
+      return this.expand.apply(this, args);
     }
-    [dartx.extractContents]() {
-      return this.extractContents();
+    [dartx.extractContents](...args) {
+      return this.extractContents.apply(this, args);
     }
-    [dartx.getBoundingClientRect]() {
-      return this.getBoundingClientRect();
+    [dartx.getBoundingClientRect](...args) {
+      return this.getBoundingClientRect.apply(this, args);
     }
-    [dartx.getClientRects]() {
-      return this.getClientRects();
+    [dartx.getClientRects](...args) {
+      return this.getClientRects.apply(this, args);
     }
-    [dartx.insertNode](node) {
-      return this.insertNode(node);
+    [dartx.insertNode](...args) {
+      return this.insertNode.apply(this, args);
     }
-    [dartx.isPointInRange](node, offset) {
-      return this.isPointInRange(node, offset);
+    [dartx.isPointInRange](...args) {
+      return this.isPointInRange.apply(this, args);
     }
-    [dartx.selectNode](node) {
-      return this.selectNode(node);
+    [dartx.selectNode](...args) {
+      return this.selectNode.apply(this, args);
     }
-    [dartx.selectNodeContents](node) {
-      return this.selectNodeContents(node);
+    [dartx.selectNodeContents](...args) {
+      return this.selectNodeContents.apply(this, args);
     }
-    [dartx.setEnd](node, offset) {
-      return this.setEnd(node, offset);
+    [dartx.setEnd](...args) {
+      return this.setEnd.apply(this, args);
     }
-    [dartx.setEndAfter](node) {
-      return this.setEndAfter(node);
+    [dartx.setEndAfter](...args) {
+      return this.setEndAfter.apply(this, args);
     }
-    [dartx.setEndBefore](node) {
-      return this.setEndBefore(node);
+    [dartx.setEndBefore](...args) {
+      return this.setEndBefore.apply(this, args);
     }
-    [dartx.setStart](node, offset) {
-      return this.setStart(node, offset);
+    [dartx.setStart](...args) {
+      return this.setStart.apply(this, args);
     }
-    [dartx.setStartAfter](node) {
-      return this.setStartAfter(node);
+    [dartx.setStartAfter](...args) {
+      return this.setStartAfter.apply(this, args);
     }
-    [dartx.setStartBefore](node) {
-      return this.setStartBefore(node);
+    [dartx.setStartBefore](...args) {
+      return this.setStartBefore.apply(this, args);
     }
-    [dartx.surroundContents](newParent) {
-      return this.surroundContents(newParent);
+    [dartx.surroundContents](...args) {
+      return this.surroundContents.apply(this, args);
     }
     static get supportsCreateContextualFragment() {
       return "createContextualFragment" in window.Range.prototype;
@@ -68650,11 +68650,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getReader]() {
-      return this.getReader();
+    [dartx.getReader](...args) {
+      return this.getReader.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableByteStream, {
@@ -68678,14 +68678,14 @@
     get [dartx.closed]() {
       return this.closed;
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.read]() {
-      return this.read();
+    [dartx.read](...args) {
+      return this.read.apply(this, args);
     }
-    [dartx.releaseLock]() {
-      return this.releaseLock();
+    [dartx.releaseLock](...args) {
+      return this.releaseLock.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableByteStreamReader, {
@@ -68706,11 +68706,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getReader]() {
-      return this.getReader();
+    [dartx.getReader](...args) {
+      return this.getReader.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableStream, {
@@ -68734,14 +68734,14 @@
     get [dartx.closed]() {
       return this.closed;
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.read]() {
-      return this.read();
+    [dartx.read](...args) {
+      return this.read.apply(this, args);
     }
-    [dartx.releaseLock]() {
-      return this.releaseLock();
+    [dartx.releaseLock](...args) {
+      return this.releaseLock.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableStreamReader, {
@@ -68876,23 +68876,23 @@
     get [dartx.reliable]() {
       return this.reliable;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data) {
-      return this.send(data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendBlob](data) {
-      return this.send(data);
+    [dartx.sendBlob](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendByteBuffer](data) {
-      return this.send(data);
+    [dartx.sendByteBuffer](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendString](data) {
-      return this.send(data);
+    [dartx.sendString](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendTypedData](data) {
-      return this.send(data);
+    [dartx.sendTypedData](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onClose]() {
       return html$.RtcDataChannel.closeEvent.forTarget(this);
@@ -69003,8 +69003,8 @@
     get [dartx.track]() {
       return this.track;
     }
-    [dartx.insertDtmf](tones, duration, interToneGap) {
-      return this.insertDTMF(tones, duration, interToneGap);
+    [dartx.insertDtmf](...args) {
+      return this.insertDTMF.apply(this, args);
     }
     get [dartx.onToneChange]() {
       return html$.RtcDtmfSender.toneChangeEvent.forTarget(this);
@@ -69229,8 +69229,8 @@
     get [dartx.signalingState]() {
       return this.signalingState;
     }
-    [dartx.addIceCandidate](candidate, successCallback, failureCallback) {
-      return this.addIceCandidate(candidate, successCallback, failureCallback);
+    [dartx.addIceCandidate](...args) {
+      return this.addIceCandidate.apply(this, args);
     }
     [dartx.addStream](stream, mediaConstraints) {
       if (mediaConstraints === void 0) mediaConstraints = null;
@@ -69242,14 +69242,14 @@
       this[_addStream_2](stream);
       return;
     }
-    [_addStream_1](stream, mediaConstraints) {
-      return this.addStream(stream, mediaConstraints);
+    [_addStream_1](...args) {
+      return this.addStream.apply(this, args);
     }
-    [_addStream_2](stream) {
-      return this.addStream(stream);
+    [_addStream_2](...args) {
+      return this.addStream.apply(this, args);
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [_createAnswer](successCallback, failureCallback, mediaConstraints) {
       if (failureCallback === void 0) failureCallback = null;
@@ -69262,14 +69262,14 @@
       this[_createAnswer_2](successCallback, failureCallback);
       return;
     }
-    [_createAnswer_1](successCallback, failureCallback, mediaConstraints) {
-      return this.createAnswer(successCallback, failureCallback, mediaConstraints);
+    [_createAnswer_1](...args) {
+      return this.createAnswer.apply(this, args);
     }
-    [_createAnswer_2](successCallback, failureCallback) {
-      return this.createAnswer(successCallback, failureCallback);
+    [_createAnswer_2](...args) {
+      return this.createAnswer.apply(this, args);
     }
-    [dartx.createDtmfSender](track) {
-      return this.createDTMFSender(track);
+    [dartx.createDtmfSender](...args) {
+      return this.createDTMFSender.apply(this, args);
     }
     [dartx.createDataChannel](label, options) {
       if (options === void 0) options = null;
@@ -69279,11 +69279,11 @@
       }
       return this[_createDataChannel_2](label);
     }
-    [_createDataChannel_1](label, options) {
-      return this.createDataChannel(label, options);
+    [_createDataChannel_1](...args) {
+      return this.createDataChannel.apply(this, args);
     }
-    [_createDataChannel_2](label) {
-      return this.createDataChannel(label);
+    [_createDataChannel_2](...args) {
+      return this.createDataChannel.apply(this, args);
     }
     [_createOffer](successCallback, failureCallback, rtcOfferOptions) {
       if (failureCallback === void 0) failureCallback = null;
@@ -69296,29 +69296,29 @@
       this[_createOffer_2](successCallback, failureCallback);
       return;
     }
-    [_createOffer_1](successCallback, failureCallback, rtcOfferOptions) {
-      return this.createOffer(successCallback, failureCallback, rtcOfferOptions);
+    [_createOffer_1](...args) {
+      return this.createOffer.apply(this, args);
     }
-    [_createOffer_2](successCallback, failureCallback) {
-      return this.createOffer(successCallback, failureCallback);
+    [_createOffer_2](...args) {
+      return this.createOffer.apply(this, args);
     }
-    [dartx.getLocalStreams]() {
-      return this.getLocalStreams();
+    [dartx.getLocalStreams](...args) {
+      return this.getLocalStreams.apply(this, args);
     }
-    [dartx.getRemoteStreams]() {
-      return this.getRemoteStreams();
+    [dartx.getRemoteStreams](...args) {
+      return this.getRemoteStreams.apply(this, args);
     }
-    [_getStats](successCallback, selector) {
-      return this.getStats(successCallback, selector);
+    [_getStats](...args) {
+      return this.getStats.apply(this, args);
     }
-    [dartx.getStreamById](streamId) {
-      return this.getStreamById(streamId);
+    [dartx.getStreamById](...args) {
+      return this.getStreamById.apply(this, args);
     }
-    [dartx.removeStream](stream) {
-      return this.removeStream(stream);
+    [dartx.removeStream](...args) {
+      return this.removeStream.apply(this, args);
     }
-    [_setLocalDescription](description, successCallback, failureCallback) {
-      return this.setLocalDescription(description, successCallback, failureCallback);
+    [_setLocalDescription](...args) {
+      return this.setLocalDescription.apply(this, args);
     }
     [dartx.setLocalDescription](description) {
       let completer = async.Completer.new();
@@ -69329,8 +69329,8 @@
       }, StringTovoid$()));
       return completer.future;
     }
-    [_setRemoteDescription](description, successCallback, failureCallback) {
-      return this.setRemoteDescription(description, successCallback, failureCallback);
+    [_setRemoteDescription](...args) {
+      return this.setRemoteDescription.apply(this, args);
     }
     [dartx.setRemoteDescription](description) {
       let completer = async.Completer.new();
@@ -69358,14 +69358,14 @@
       this[_updateIce_3]();
       return;
     }
-    [_updateIce_1](configuration, mediaConstraints) {
-      return this.updateIce(configuration, mediaConstraints);
+    [_updateIce_1](...args) {
+      return this.updateIce.apply(this, args);
     }
-    [_updateIce_2](configuration) {
-      return this.updateIce(configuration);
+    [_updateIce_2](...args) {
+      return this.updateIce.apply(this, args);
     }
-    [_updateIce_3]() {
-      return this.updateIce();
+    [_updateIce_3](...args) {
+      return this.updateIce.apply(this, args);
     }
     get [dartx.onAddStream]() {
       return html$.RtcPeerConnection.addStreamEvent.forTarget(this);
@@ -69540,11 +69540,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.names]() {
-      return this.names();
+    [dartx.names](...args) {
+      return this.names.apply(this, args);
     }
-    [dartx.stat](name) {
-      return this.stat(name);
+    [dartx.stat](...args) {
+      return this.stat.apply(this, args);
     }
   };
   dart.setSignature(html$.RtcStatsReport, {
@@ -69569,11 +69569,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.result]() {
-      return this.result();
+    [dartx.result](...args) {
+      return this.result.apply(this, args);
     }
   };
   dart.setSignature(html$.RtcStatsResponse, {
@@ -69664,11 +69664,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.lock](orientation) {
-      return this.lock(orientation);
+    [dartx.lock](...args) {
+      return this.lock.apply(this, args);
     }
-    [dartx.unlock]() {
-      return this.unlock();
+    [dartx.unlock](...args) {
+      return this.unlock.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.ScreenOrientation.changeEvent.forTarget(this);
@@ -69898,8 +69898,8 @@
     get [dartx.velocityY]() {
       return this.velocityY;
     }
-    [dartx.consumeDelta](x, y) {
-      return this.consumeDelta(x, y);
+    [dartx.consumeDelta](...args) {
+      return this.consumeDelta.apply(this, args);
     }
   };
   dart.setSignature(html$.ScrollState, {
@@ -70141,26 +70141,26 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [__setter__](index, option) {
-      return this.__setter__(index, option);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.add](element, before) {
-      return this.add(element, before);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
     get [dartx.options]() {
       let options = ListOfOptionElement().from(this[dartx.querySelectorAll](html$.Element)('option'));
@@ -70278,47 +70278,47 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.addRange](range) {
-      return this.addRange(range);
+    [dartx.addRange](...args) {
+      return this.addRange.apply(this, args);
     }
-    [dartx.collapse](node, offset) {
-      return this.collapse(node, offset);
+    [dartx.collapse](...args) {
+      return this.collapse.apply(this, args);
     }
-    [dartx.collapseToEnd]() {
-      return this.collapseToEnd();
+    [dartx.collapseToEnd](...args) {
+      return this.collapseToEnd.apply(this, args);
     }
-    [dartx.collapseToStart]() {
-      return this.collapseToStart();
+    [dartx.collapseToStart](...args) {
+      return this.collapseToStart.apply(this, args);
     }
-    [dartx.containsNode](node, allowPartialContainment) {
-      return this.containsNode(node, allowPartialContainment);
+    [dartx.containsNode](...args) {
+      return this.containsNode.apply(this, args);
     }
-    [dartx.deleteFromDocument]() {
-      return this.deleteFromDocument();
+    [dartx.deleteFromDocument](...args) {
+      return this.deleteFromDocument.apply(this, args);
     }
-    [dartx.empty]() {
-      return this.empty();
+    [dartx.empty](...args) {
+      return this.empty.apply(this, args);
     }
-    [dartx.extend](node, offset) {
-      return this.extend(node, offset);
+    [dartx.extend](...args) {
+      return this.extend.apply(this, args);
     }
-    [dartx.getRangeAt](index) {
-      return this.getRangeAt(index);
+    [dartx.getRangeAt](...args) {
+      return this.getRangeAt.apply(this, args);
     }
-    [dartx.modify](alter, direction, granularity) {
-      return this.modify(alter, direction, granularity);
+    [dartx.modify](...args) {
+      return this.modify.apply(this, args);
     }
-    [dartx.removeAllRanges]() {
-      return this.removeAllRanges();
+    [dartx.removeAllRanges](...args) {
+      return this.removeAllRanges.apply(this, args);
     }
-    [dartx.selectAllChildren](node) {
-      return this.selectAllChildren(node);
+    [dartx.selectAllChildren](...args) {
+      return this.selectAllChildren.apply(this, args);
     }
-    [dartx.setBaseAndExtent](baseNode, baseOffset, extentNode, extentOffset) {
-      return this.setBaseAndExtent(baseNode, baseOffset, extentNode, extentOffset);
+    [dartx.setBaseAndExtent](...args) {
+      return this.setBaseAndExtent.apply(this, args);
     }
-    [dartx.setPosition](node, offset) {
-      return this.setPosition(node, offset);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
   };
   dart.setSignature(html$.Selection, {
@@ -70374,8 +70374,8 @@
     get [dartx.targetUrl]() {
       return this.targetURL;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -70388,11 +70388,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.ServicePort, {
@@ -70430,18 +70430,18 @@
       }
       return this[_connect_2](url);
     }
-    [_connect_1](url, options) {
-      return this.connect(url, options);
+    [_connect_1](...args) {
+      return this.connect.apply(this, args);
     }
-    [_connect_2](url) {
-      return this.connect(url);
+    [_connect_2](...args) {
+      return this.connect.apply(this, args);
     }
     [dartx.match](options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_match_1](options_1);
     }
-    [_match_1](options) {
-      return this.match(options);
+    [_match_1](...args) {
+      return this.match.apply(this, args);
     }
     [dartx.matchAll](options) {
       if (options === void 0) options = null;
@@ -70451,11 +70451,11 @@
       }
       return this[_matchAll_2]();
     }
-    [_matchAll_1](options) {
-      return this.matchAll(options);
+    [_matchAll_1](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [_matchAll_2]() {
-      return this.matchAll();
+    [_matchAll_2](...args) {
+      return this.matchAll.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServicePortCollection.messageEvent.forTarget(this);
@@ -70511,8 +70511,8 @@
     get [dartx.targetUrl]() {
       return this.targetURL;
     }
-    [dartx.respondWith](response) {
-      return this.respondWith(response);
+    [dartx.respondWith](...args) {
+      return this.respondWith.apply(this, args);
     }
   };
   dart.setSignature(html$.ServicePortConnectEvent, {
@@ -70550,11 +70550,11 @@
     get [dartx.ready]() {
       return this.ready;
     }
-    [dartx.getRegistration](documentURL) {
-      return this.getRegistration(documentURL);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
     [dartx.register](url, options) {
       if (options === void 0) options = null;
@@ -70564,11 +70564,11 @@
       }
       return this[_register_2](url);
     }
-    [_register_1](url, options) {
-      return this.register(url, options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2](url) {
-      return this.register(url);
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServiceWorkerContainer.messageEvent.forTarget(this);
@@ -70616,8 +70616,8 @@
     get [dartx.registration]() {
       return this.registration;
     }
-    [dartx.skipWaiting]() {
-      return this.skipWaiting();
+    [dartx.skipWaiting](...args) {
+      return this.skipWaiting.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServiceWorkerGlobalScope.messageEvent.forTarget(this);
@@ -70758,11 +70758,11 @@
       }
       return this[_getNotifications_2]();
     }
-    [_getNotifications_1](filter) {
-      return this.getNotifications(filter);
+    [_getNotifications_1](...args) {
+      return this.getNotifications.apply(this, args);
     }
-    [_getNotifications_2]() {
-      return this.getNotifications();
+    [_getNotifications_2](...args) {
+      return this.getNotifications.apply(this, args);
     }
     [dartx.showNotification](title, options) {
       if (options === void 0) options = null;
@@ -70772,17 +70772,17 @@
       }
       return this[_showNotification_2](title);
     }
-    [_showNotification_1](title, options) {
-      return this.showNotification(title, options);
+    [_showNotification_1](...args) {
+      return this.showNotification.apply(this, args);
     }
-    [_showNotification_2](title) {
-      return this.showNotification(title);
+    [_showNotification_2](...args) {
+      return this.showNotification.apply(this, args);
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
-    [dartx.update]() {
-      return this.update();
+    [dartx.update](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(html$.ServiceWorkerRegistration, {
@@ -70825,8 +70825,8 @@
     static get supported() {
       return html$.Element.isTagSupported('shadow');
     }
-    [dartx.getDistributedNodes]() {
-      return this.getDistributedNodes();
+    [dartx.getDistributedNodes](...args) {
+      return this.getDistributedNodes.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ShadowElement, 'created');
@@ -70881,17 +70881,17 @@
     get [dartx.styleSheets]() {
       return this.styleSheets;
     }
-    [dartx.clone](deep) {
-      return this.cloneNode(deep);
+    [dartx.clone](...args) {
+      return this.cloneNode.apply(this, args);
     }
-    [dartx.elementFromPoint](x, y) {
-      return this.elementFromPoint(x, y);
+    [dartx.elementFromPoint](...args) {
+      return this.elementFromPoint.apply(this, args);
     }
-    [dartx.elementsFromPoint](x, y) {
-      return this.elementsFromPoint(x, y);
+    [dartx.elementsFromPoint](...args) {
+      return this.elementsFromPoint.apply(this, args);
     }
-    [dartx.getSelection]() {
-      return this.getSelection();
+    [dartx.getSelection](...args) {
+      return this.getSelection.apply(this, args);
     }
     static get supported() {
       return !!(Element.prototype.createShadowRoot || Element.prototype.webkitCreateShadowRoot);
@@ -71101,20 +71101,20 @@
     get [dartx.updating]() {
       return this.updating;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.appendBuffer](data) {
-      return this.appendBuffer(data);
+    [dartx.appendBuffer](...args) {
+      return this.appendBuffer.apply(this, args);
     }
-    [dartx.appendStream](stream, maxSize) {
-      return this.appendStream(stream, maxSize);
+    [dartx.appendStream](...args) {
+      return this.appendStream.apply(this, args);
     }
-    [dartx.appendTypedData](data) {
-      return this.appendBuffer(data);
+    [dartx.appendTypedData](...args) {
+      return this.appendBuffer.apply(this, args);
     }
-    [dartx.remove](start, end) {
-      return this.remove(start, end);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
   };
   dart.setSignature(html$.SourceBuffer, {
@@ -71190,8 +71190,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.SourceBufferList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSourceBuffer()];
@@ -71435,14 +71435,14 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.addFromString](string, weight) {
-      return this.addFromString(string, weight);
+    [dartx.addFromString](...args) {
+      return this.addFromString.apply(this, args);
     }
-    [dartx.addFromUri](src, weight) {
-      return this.addFromUri(src, weight);
+    [dartx.addFromUri](...args) {
+      return this.addFromUri.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.SpeechGrammarList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSpeechGrammar()];
@@ -71542,14 +71542,14 @@
     set [dartx.serviceUri](value) {
       this.serviceURI = value;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.start]() {
-      return this.start();
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onAudioEnd]() {
       return html$.SpeechRecognition.audioEndEvent.forTarget(this);
@@ -71809,8 +71809,8 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.SpeechRecognitionResult, {
@@ -71845,20 +71845,20 @@
     get [dartx.speaking]() {
       return this.speaking;
     }
-    [dartx.cancel]() {
-      return this.cancel();
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getVoices]() {
-      return this.getVoices();
+    [dartx.getVoices](...args) {
+      return this.getVoices.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.resume]() {
-      return this.resume();
+    [dartx.resume](...args) {
+      return this.resume.apply(this, args);
     }
-    [dartx.speak](utterance) {
-      return this.speak(utterance);
+    [dartx.speak](...args) {
+      return this.speak.apply(this, args);
     }
   };
   dart.setSignature(html$.SpeechSynthesis, {
@@ -72123,8 +72123,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.add](name, port) {
-      return this.add(name, port);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.StashedPortCollection.messageEvent.forTarget(this);
@@ -72227,29 +72227,29 @@
     get [_length$2]() {
       return this.length;
     }
-    [__delete__](index_OR_name) {
-      return this.__delete__(index_OR_name);
+    [__delete__](...args) {
+      return this.__delete__.apply(this, args);
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [_clear$1]() {
-      return this.clear();
+    [_clear$1](...args) {
+      return this.clear.apply(this, args);
     }
-    [_getItem](key) {
-      return this.getItem(key);
+    [_getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [_key](index) {
-      return this.key(index);
+    [_key](...args) {
+      return this.key.apply(this, args);
     }
-    [_removeItem](key) {
-      return this.removeItem(key);
+    [_removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [_setItem](key, data) {
-      return this.setItem(key, data);
+    [_setItem](...args) {
+      return this.setItem.apply(this, args);
     }
   };
   html$.Storage[dart.implements] = () => [MapOfString$String()];
@@ -72335,8 +72335,8 @@
     get [dartx.url]() {
       return this.url;
     }
-    [_initStorageEvent](typeArg, canBubbleArg, cancelableArg, keyArg, oldValueArg, newValueArg, urlArg, storageAreaArg) {
-      return this.initStorageEvent(typeArg, canBubbleArg, cancelableArg, keyArg, oldValueArg, newValueArg, urlArg, storageAreaArg);
+    [_initStorageEvent](...args) {
+      return this.initStorageEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.StorageEvent, {
@@ -72394,11 +72394,11 @@
     get [dartx.supportedTypes]() {
       return this.supportedTypes;
     }
-    [dartx.queryInfo](type) {
-      return this.queryInfo(type);
+    [dartx.queryInfo](...args) {
+      return this.queryInfo.apply(this, args);
     }
-    [dartx.requestPersistentQuota](newQuota) {
-      return this.requestPersistentQuota(newQuota);
+    [dartx.requestPersistentQuota](...args) {
+      return this.requestPersistentQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.StorageQuota, {
@@ -72481,8 +72481,8 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.matchMedium](mediaquery) {
-      return this.matchMedium(mediaquery);
+    [dartx.matchMedium](...args) {
+      return this.matchMedium.apply(this, args);
     }
   };
   dart.setSignature(html$.StyleMedia, {
@@ -72529,14 +72529,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getRegistration](tag) {
-      return this.getRegistration(tag);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
-    [dartx.permissionState]() {
-      return this.permissionState();
+    [dartx.permissionState](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.register](options) {
       if (options === void 0) options = null;
@@ -72546,11 +72546,11 @@
       }
       return this[_register_2]();
     }
-    [_register_1](options) {
-      return this.register(options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2]() {
-      return this.register();
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
   };
   dart.setSignature(html$.SyncManager, {
@@ -72576,8 +72576,8 @@
     get [dartx.tag]() {
       return this.tag;
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
   };
   dart.setSignature(html$.SyncRegistration, {
@@ -72755,8 +72755,8 @@
       this[dartx.children][dartx.add](tbody);
       return html$.TableSectionElement._check(tbody);
     }
-    [_nativeCreateTBody]() {
-      return this.createTBody();
+    [_nativeCreateTBody](...args) {
+      return this.createTBody.apply(this, args);
     }
     [dartx.createFragment](html, opts) {
       let validator = opts && 'validator' in opts ? opts.validator : null;
@@ -72808,29 +72808,29 @@
     set [dartx.tHead](value) {
       this.tHead = value;
     }
-    [_createCaption]() {
-      return this.createCaption();
+    [_createCaption](...args) {
+      return this.createCaption.apply(this, args);
     }
-    [_createTFoot]() {
-      return this.createTFoot();
+    [_createTFoot](...args) {
+      return this.createTFoot.apply(this, args);
     }
-    [_createTHead]() {
-      return this.createTHead();
+    [_createTHead](...args) {
+      return this.createTHead.apply(this, args);
     }
-    [dartx.deleteCaption]() {
-      return this.deleteCaption();
+    [dartx.deleteCaption](...args) {
+      return this.deleteCaption.apply(this, args);
     }
-    [dartx.deleteRow](index) {
-      return this.deleteRow(index);
+    [dartx.deleteRow](...args) {
+      return this.deleteRow.apply(this, args);
     }
-    [dartx.deleteTFoot]() {
-      return this.deleteTFoot();
+    [dartx.deleteTFoot](...args) {
+      return this.deleteTFoot.apply(this, args);
     }
-    [dartx.deleteTHead]() {
-      return this.deleteTHead();
+    [dartx.deleteTHead](...args) {
+      return this.deleteTHead.apply(this, args);
     }
-    [_insertRow](index) {
-      return this.insertRow(index);
+    [_insertRow](...args) {
+      return this.insertRow.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableElement, 'created');
@@ -72925,11 +72925,11 @@
     get [dartx.sectionRowIndex]() {
       return this.sectionRowIndex;
     }
-    [dartx.deleteCell](index) {
-      return this.deleteCell(index);
+    [dartx.deleteCell](...args) {
+      return this.deleteCell.apply(this, args);
     }
-    [_insertCell](index) {
-      return this.insertCell(index);
+    [_insertCell](...args) {
+      return this.insertCell.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableRowElement, 'created');
@@ -72991,11 +72991,11 @@
     get [_rows]() {
       return this.rows;
     }
-    [dartx.deleteRow](index) {
-      return this.deleteRow(index);
+    [dartx.deleteRow](...args) {
+      return this.deleteRow.apply(this, args);
     }
-    [_insertRow](index) {
-      return this.insertRow(index);
+    [_insertRow](...args) {
+      return this.insertRow.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableSectionElement, 'created');
@@ -73259,23 +73259,23 @@
     set [dartx.wrap](value) {
       this.wrap = value;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.select]() {
-      return this.select();
+    [dartx.select](...args) {
+      return this.select.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
-    [dartx.setRangeText](replacement, opts) {
-      return this.setRangeText(replacement, opts);
+    [dartx.setRangeText](...args) {
+      return this.setRangeText.apply(this, args);
     }
-    [dartx.setSelectionRange](start, end, direction) {
-      return this.setSelectionRange(start, end, direction);
+    [dartx.setSelectionRange](...args) {
+      return this.setSelectionRange.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TextAreaElement, 'created');
@@ -73346,8 +73346,8 @@
     get [dartx.data]() {
       return this.data;
     }
-    [_initTextEvent](typeArg, canBubbleArg, cancelableArg, viewArg, dataArg) {
-      return this.initTextEvent(typeArg, canBubbleArg, cancelableArg, viewArg, dataArg);
+    [_initTextEvent](...args) {
+      return this.initTextEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.TextEvent, {
@@ -73478,17 +73478,17 @@
     get [dartx.regions]() {
       return this.regions;
     }
-    [dartx.addCue](cue) {
-      return this.addCue(cue);
+    [dartx.addCue](...args) {
+      return this.addCue.apply(this, args);
     }
-    [dartx.addRegion](region) {
-      return this.addRegion(region);
+    [dartx.addRegion](...args) {
+      return this.addRegion.apply(this, args);
     }
-    [dartx.removeCue](cue) {
-      return this.removeCue(cue);
+    [dartx.removeCue](...args) {
+      return this.removeCue.apply(this, args);
     }
-    [dartx.removeRegion](region) {
-      return this.removeRegion(region);
+    [dartx.removeRegion](...args) {
+      return this.removeRegion.apply(this, args);
     }
     get [dartx.onCueChange]() {
       return html$.TextTrack.cueChangeEvent.forTarget(this);
@@ -73649,11 +73649,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getCueById](id) {
-      return this.getCueById(id);
+    [dartx.getCueById](...args) {
+      return this.getCueById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.TextTrackCueList[dart.implements] = () => [ListOfTextTrackCue(), _js_helper.JavaScriptIndexingBehavior];
@@ -73731,11 +73731,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
     get [dartx.onAddTrack]() {
       return html$.TextTrackList.addTrackEvent.forTarget(this);
@@ -73789,11 +73789,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.end](index) {
-      return this.end(index);
+    [dartx.end](...args) {
+      return this.end.apply(this, args);
     }
-    [dartx.start](index) {
-      return this.start(index);
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
   };
   dart.setSignature(html$.TimeRanges, {
@@ -74016,8 +74016,8 @@
     get [dartx.touches]() {
       return this.touches;
     }
-    [_initTouchEvent](touches, targetTouches, changedTouches, type, view, unused1, unused2, unused3, unused4, ctrlKey, altKey, shiftKey, metaKey) {
-      return this.initTouchEvent(touches, targetTouches, changedTouches, type, view, unused1, unused2, unused3, unused4, ctrlKey, altKey, shiftKey, metaKey);
+    [_initTouchEvent](...args) {
+      return this.initTouchEvent.apply(this, args);
     }
     static get supported() {
       return html_common.Device.isEventTypeSupported('TouchEvent');
@@ -74100,8 +74100,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.TouchList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfTouch()];
@@ -74211,8 +74211,8 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.TrackDefaultList, {
@@ -74448,26 +74448,26 @@
     get [dartx.whatToShow]() {
       return this.whatToShow;
     }
-    [dartx.firstChild]() {
-      return this.firstChild();
+    [dartx.firstChild](...args) {
+      return this.firstChild.apply(this, args);
     }
-    [dartx.lastChild]() {
-      return this.lastChild();
+    [dartx.lastChild](...args) {
+      return this.lastChild.apply(this, args);
     }
-    [dartx.nextNode]() {
-      return this.nextNode();
+    [dartx.nextNode](...args) {
+      return this.nextNode.apply(this, args);
     }
-    [dartx.nextSibling]() {
-      return this.nextSibling();
+    [dartx.nextSibling](...args) {
+      return this.nextSibling.apply(this, args);
     }
-    [dartx.parentNode]() {
-      return this.parentNode();
+    [dartx.parentNode](...args) {
+      return this.parentNode.apply(this, args);
     }
-    [dartx.previousNode]() {
-      return this.previousNode();
+    [dartx.previousNode](...args) {
+      return this.previousNode.apply(this, args);
     }
-    [dartx.previousSibling]() {
-      return this.previousSibling();
+    [dartx.previousSibling](...args) {
+      return this.previousSibling.apply(this, args);
     }
   };
   dart.setSignature(html$.TreeWalker, {
@@ -75177,14 +75177,14 @@
     set [dartx.width](value) {
       this.width = value;
     }
-    [dartx.getVideoPlaybackQuality]() {
-      return this.getVideoPlaybackQuality();
+    [dartx.getVideoPlaybackQuality](...args) {
+      return this.getVideoPlaybackQuality.apply(this, args);
     }
-    [dartx.enterFullscreen]() {
-      return this.webkitEnterFullscreen();
+    [dartx.enterFullscreen](...args) {
+      return this.webkitEnterFullscreen.apply(this, args);
     }
-    [dartx.exitFullscreen]() {
-      return this.webkitExitFullscreen();
+    [dartx.exitFullscreen](...args) {
+      return this.webkitExitFullscreen.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.VideoElement, 'created');
@@ -75301,11 +75301,11 @@
     get [dartx.selectedIndex]() {
       return this.selectedIndex;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.VideoTrackList.changeEvent.forTarget(this);
@@ -75400,8 +75400,8 @@
     set [dartx.vertical](value) {
       this.vertical = value;
     }
-    [dartx.getCueAsHtml]() {
-      return this.getCueAsHTML();
+    [dartx.getCueAsHtml](...args) {
+      return this.getCueAsHTML.apply(this, args);
     }
   };
   dart.setSignature(html$.VttCue, {
@@ -75529,11 +75529,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.getRegionById](id) {
-      return this.getRegionById(id);
+    [dartx.getRegionById](...args) {
+      return this.getRegionById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.VttRegionList, {
@@ -75604,23 +75604,23 @@
     get [dartx.url]() {
       return this.url;
     }
-    [dartx.close](code, reason) {
-      return this.close(code, reason);
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data) {
-      return this.send(data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendBlob](data) {
-      return this.send(data);
+    [dartx.sendBlob](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendByteBuffer](data) {
-      return this.send(data);
+    [dartx.sendByteBuffer](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendString](data) {
-      return this.send(data);
+    [dartx.sendString](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendTypedData](data) {
-      return this.send(data);
+    [dartx.sendTypedData](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onClose]() {
       return html$.WebSocket.closeEvent.forTarget(this);
@@ -75791,14 +75791,14 @@
     get [_hasInitMouseScrollEvent]() {
       return !!this.initMouseScrollEvent;
     }
-    [_initMouseScrollEvent](type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget, axis) {
-      return this.initMouseScrollEvent(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget, axis);
+    [_initMouseScrollEvent](...args) {
+      return this.initMouseScrollEvent.apply(this, args);
     }
     get [_hasInitWheelEvent]() {
       return !!this.initWheelEvent;
     }
-    [_initWheelEvent](eventType, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, button, relatedTarget, modifiersList, deltaX, deltaY, deltaZ, deltaMode) {
-      return this.initWheelEvent(eventType, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, button, relatedTarget, modifiersList, deltaX, deltaY, deltaZ, deltaMode);
+    [_initWheelEvent](...args) {
+      return this.initWheelEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.WheelEvent, {
@@ -76060,11 +76060,11 @@
       this[_ensureRequestAnimationFrame]();
       this[_cancelAnimationFrame](id);
     }
-    [_requestAnimationFrame](callback) {
-      return this.requestAnimationFrame(callback);
+    [_requestAnimationFrame](...args) {
+      return this.requestAnimationFrame.apply(this, args);
     }
-    [_cancelAnimationFrame](id) {
-      return this.cancelAnimationFrame(id);
+    [_cancelAnimationFrame](...args) {
+      return this.cancelAnimationFrame.apply(this, args);
     }
     [_ensureRequestAnimationFrame]() {
       if (!!(this.requestAnimationFrame && this.cancelAnimationFrame)) return;
@@ -76257,20 +76257,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [__getter___1](index) {
-      return this.__getter__(index);
+    [__getter___1](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__getter___2](name) {
-      return this.__getter__(name);
+    [__getter___2](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.alert](message) {
-      return this.alert(message);
+    [dartx.alert](...args) {
+      return this.alert.apply(this, args);
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.confirm](message) {
-      return this.confirm(message);
+    [dartx.confirm](...args) {
+      return this.confirm.apply(this, args);
     }
     [dartx.fetch](input, init) {
       if (init === void 0) init = null;
@@ -76280,35 +76280,35 @@
       }
       return this[_fetch_2](input);
     }
-    [_fetch_1](input, init) {
-      return this.fetch(input, init);
+    [_fetch_1](...args) {
+      return this.fetch.apply(this, args);
     }
-    [_fetch_2](input) {
-      return this.fetch(input);
+    [_fetch_2](...args) {
+      return this.fetch.apply(this, args);
     }
-    [dartx.find](string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog) {
-      return this.find(string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog);
+    [dartx.find](...args) {
+      return this.find.apply(this, args);
     }
-    [_getComputedStyle](elt, pseudoElt) {
-      return this.getComputedStyle(elt, pseudoElt);
+    [_getComputedStyle](...args) {
+      return this.getComputedStyle.apply(this, args);
     }
-    [dartx.getMatchedCssRules](element, pseudoElement) {
-      return this.getMatchedCSSRules(element, pseudoElement);
+    [dartx.getMatchedCssRules](...args) {
+      return this.getMatchedCSSRules.apply(this, args);
     }
-    [dartx.getSelection]() {
-      return this.getSelection();
+    [dartx.getSelection](...args) {
+      return this.getSelection.apply(this, args);
     }
-    [dartx.matchMedia](query) {
-      return this.matchMedia(query);
+    [dartx.matchMedia](...args) {
+      return this.matchMedia.apply(this, args);
     }
-    [dartx.moveBy](x, y) {
-      return this.moveBy(x, y);
+    [dartx.moveBy](...args) {
+      return this.moveBy.apply(this, args);
     }
-    [_moveTo](x, y) {
-      return this.moveTo(x, y);
+    [_moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.openDatabase](name, version, displayName, estimatedSize, creationCallback) {
-      return this.openDatabase(name, version, displayName, estimatedSize, creationCallback);
+    [dartx.openDatabase](...args) {
+      return this.openDatabase.apply(this, args);
     }
     [dartx.postMessage](message, targetOrigin, transfer) {
       if (transfer === void 0) transfer = null;
@@ -76321,20 +76321,20 @@
       this[_postMessage_2](message_1, targetOrigin);
       return;
     }
-    [_postMessage_1](message, targetOrigin, transfer) {
-      return this.postMessage(message, targetOrigin, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message, targetOrigin) {
-      return this.postMessage(message, targetOrigin);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.print]() {
-      return this.print();
+    [dartx.print](...args) {
+      return this.print.apply(this, args);
     }
-    [dartx.resizeBy](x, y) {
-      return this.resizeBy(x, y);
+    [dartx.resizeBy](...args) {
+      return this.resizeBy.apply(this, args);
     }
-    [dartx.resizeTo](x, y) {
-      return this.resizeTo(x, y);
+    [dartx.resizeTo](...args) {
+      return this.resizeTo.apply(this, args);
     }
     [dartx.scroll](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76364,20 +76364,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scroll_1]() {
-      return this.scroll();
+    [_scroll_1](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_2](options) {
-      return this.scroll(options);
+    [_scroll_2](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_3](x, y) {
-      return this.scroll(x, y);
+    [_scroll_3](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_4](x, y) {
-      return this.scroll(x, y);
+    [_scroll_4](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_5](x, y, scrollOptions) {
-      return this.scroll(x, y, scrollOptions);
+    [_scroll_5](...args) {
+      return this.scroll.apply(this, args);
     }
     [dartx.scrollBy](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76407,20 +76407,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollBy_1]() {
-      return this.scrollBy();
+    [_scrollBy_1](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_2](options) {
-      return this.scrollBy(options);
+    [_scrollBy_2](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_3](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_3](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_4](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_4](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_5](x, y, scrollOptions) {
-      return this.scrollBy(x, y, scrollOptions);
+    [_scrollBy_5](...args) {
+      return this.scrollBy.apply(this, args);
     }
     [dartx.scrollTo](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76450,26 +76450,26 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollTo_1]() {
-      return this.scrollTo();
+    [_scrollTo_1](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_2](options) {
-      return this.scrollTo(options);
+    [_scrollTo_2](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_3](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_3](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_4](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_4](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_5](x, y, scrollOptions) {
-      return this.scrollTo(x, y, scrollOptions);
+    [_scrollTo_5](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
-    [__requestFileSystem](type, size, successCallback, errorCallback) {
-      return this.webkitRequestFileSystem(type, size, successCallback, errorCallback);
+    [__requestFileSystem](...args) {
+      return this.webkitRequestFileSystem.apply(this, args);
     }
     [_requestFileSystem](type, size) {
       let completer = CompleterOfFileSystem().new();
@@ -76480,8 +76480,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_resolveLocalFileSystemUrl](url, successCallback, errorCallback) {
-      return this.webkitResolveLocalFileSystemURL(url, successCallback, errorCallback);
+    [_resolveLocalFileSystemUrl](...args) {
+      return this.webkitResolveLocalFileSystemURL.apply(this, args);
     }
     [dartx.resolveLocalFileSystemUrl](url) {
       let completer = CompleterOfEntry().new();
@@ -76492,29 +76492,29 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.atob](atob) {
-      return this.atob(atob);
+    [dartx.atob](...args) {
+      return this.atob.apply(this, args);
     }
-    [dartx.btoa](btoa) {
-      return this.btoa(btoa);
+    [dartx.btoa](...args) {
+      return this.btoa.apply(this, args);
     }
-    [_setInterval_String](handler, timeout, arguments$) {
-      return this.setInterval(handler, timeout, arguments$);
+    [_setInterval_String](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout_String](handler, timeout, arguments$) {
-      return this.setTimeout(handler, timeout, arguments$);
+    [_setTimeout_String](...args) {
+      return this.setTimeout.apply(this, args);
     }
-    [_clearInterval](handle) {
-      return this.clearInterval(handle);
+    [_clearInterval](...args) {
+      return this.clearInterval.apply(this, args);
     }
-    [_clearTimeout](handle) {
-      return this.clearTimeout(handle);
+    [_clearTimeout](...args) {
+      return this.clearTimeout.apply(this, args);
     }
-    [_setInterval](handler, timeout) {
-      return this.setInterval(handler, timeout);
+    [_setInterval](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout](handler, timeout) {
-      return this.setTimeout(handler, timeout);
+    [_setTimeout](...args) {
+      return this.setTimeout.apply(this, args);
     }
     get [dartx.onContentLoaded]() {
       return html$.Window.contentLoadedEvent.forTarget(this);
@@ -77228,8 +77228,8 @@
     get [dartx.visibilityState]() {
       return this.visibilityState;
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
   };
   dart.setSignature(html$.WindowClient, {
@@ -77359,14 +77359,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.terminate]() {
-      return this.terminate();
+    [dartx.terminate](...args) {
+      return this.terminate.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.Worker.errorEvent.forTarget(this);
@@ -77437,35 +77437,35 @@
     get [dartx.memory]() {
       return this.memory;
     }
-    [dartx.clearMarks](markName) {
-      return this.clearMarks(markName);
+    [dartx.clearMarks](...args) {
+      return this.clearMarks.apply(this, args);
     }
-    [dartx.clearMeasures](measureName) {
-      return this.clearMeasures(measureName);
+    [dartx.clearMeasures](...args) {
+      return this.clearMeasures.apply(this, args);
     }
-    [dartx.getEntries]() {
-      return this.getEntries();
+    [dartx.getEntries](...args) {
+      return this.getEntries.apply(this, args);
     }
-    [dartx.getEntriesByName](name, entryType) {
-      return this.getEntriesByName(name, entryType);
+    [dartx.getEntriesByName](...args) {
+      return this.getEntriesByName.apply(this, args);
     }
-    [dartx.getEntriesByType](entryType) {
-      return this.getEntriesByType(entryType);
+    [dartx.getEntriesByType](...args) {
+      return this.getEntriesByType.apply(this, args);
     }
-    [dartx.mark](markName) {
-      return this.mark(markName);
+    [dartx.mark](...args) {
+      return this.mark.apply(this, args);
     }
-    [dartx.measure](measureName, startMark, endMark) {
-      return this.measure(measureName, startMark, endMark);
+    [dartx.measure](...args) {
+      return this.measure.apply(this, args);
     }
-    [dartx.now]() {
-      return this.now();
+    [dartx.now](...args) {
+      return this.now.apply(this, args);
     }
-    [dartx.clearResourceTimings]() {
-      return this.webkitClearResourceTimings();
+    [dartx.clearResourceTimings](...args) {
+      return this.webkitClearResourceTimings.apply(this, args);
     }
-    [dartx.setResourceTimingBufferSize](maxSize) {
-      return this.webkitSetResourceTimingBufferSize(maxSize);
+    [dartx.setResourceTimingBufferSize](...args) {
+      return this.webkitSetResourceTimingBufferSize.apply(this, args);
     }
   };
   dart.setSignature(html$.WorkerPerformance, {
@@ -77500,14 +77500,14 @@
     static _create_1() {
       return new XPathEvaluator();
     }
-    [dartx.createExpression](expression, resolver) {
-      return this.createExpression(expression, resolver);
+    [dartx.createExpression](...args) {
+      return this.createExpression.apply(this, args);
     }
-    [dartx.createNSResolver](nodeResolver) {
-      return this.createNSResolver(nodeResolver);
+    [dartx.createNSResolver](...args) {
+      return this.createNSResolver.apply(this, args);
     }
-    [dartx.evaluate](expression, contextNode, resolver, type, inResult) {
-      return this.evaluate(expression, contextNode, resolver, type, inResult);
+    [dartx.evaluate](...args) {
+      return this.evaluate.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathEvaluator, {
@@ -77531,8 +77531,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.evaluate](contextNode, type, inResult) {
-      return this.evaluate(contextNode, type, inResult);
+    [dartx.evaluate](...args) {
+      return this.evaluate.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathExpression, {
@@ -77547,8 +77547,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.lookupNamespaceUri](prefix) {
-      return this.lookupNamespaceURI(prefix);
+    [dartx.lookupNamespaceUri](...args) {
+      return this.lookupNamespaceURI.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathNSResolver, {
@@ -77592,11 +77592,11 @@
     get [dartx.stringValue]() {
       return this.stringValue;
     }
-    [dartx.iterateNext]() {
-      return this.iterateNext();
+    [dartx.iterateNext](...args) {
+      return this.iterateNext.apply(this, args);
     }
-    [dartx.snapshotItem](index) {
-      return this.snapshotItem(index);
+    [dartx.snapshotItem](...args) {
+      return this.snapshotItem.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathResult, {
@@ -77660,8 +77660,8 @@
     static _create_1() {
       return new XMLSerializer();
     }
-    [dartx.serializeToString](root) {
-      return this.serializeToString(root);
+    [dartx.serializeToString](...args) {
+      return this.serializeToString.apply(this, args);
     }
   };
   dart.setSignature(html$.XmlSerializer, {
@@ -77697,29 +77697,29 @@
     static get supported() {
       return !!window.XSLTProcessor;
     }
-    [dartx.clearParameters]() {
-      return this.clearParameters();
+    [dartx.clearParameters](...args) {
+      return this.clearParameters.apply(this, args);
     }
-    [dartx.getParameter](namespaceURI, localName) {
-      return this.getParameter(namespaceURI, localName);
+    [dartx.getParameter](...args) {
+      return this.getParameter.apply(this, args);
     }
-    [dartx.importStylesheet](style) {
-      return this.importStylesheet(style);
+    [dartx.importStylesheet](...args) {
+      return this.importStylesheet.apply(this, args);
     }
-    [dartx.removeParameter](namespaceURI, localName) {
-      return this.removeParameter(namespaceURI, localName);
+    [dartx.removeParameter](...args) {
+      return this.removeParameter.apply(this, args);
     }
-    [dartx.reset]() {
-      return this.reset();
+    [dartx.reset](...args) {
+      return this.reset.apply(this, args);
     }
-    [dartx.setParameter](namespaceURI, localName, value) {
-      return this.setParameter(namespaceURI, localName, value);
+    [dartx.setParameter](...args) {
+      return this.setParameter.apply(this, args);
     }
-    [dartx.transformToDocument](source) {
-      return this.transformToDocument(source);
+    [dartx.transformToDocument](...args) {
+      return this.transformToDocument.apply(this, args);
     }
-    [dartx.transformToFragment](source, output) {
-      return this.transformToFragment(source, output);
+    [dartx.transformToFragment](...args) {
+      return this.transformToFragment.apply(this, args);
     }
   };
   dart.setSignature(html$.XsltProcessor, {
@@ -77984,11 +77984,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._ClientRectList[dart.implements] = () => [ListOfRectangleOfnum()];
@@ -78064,8 +78064,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._CssRuleList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfCssRule()];
@@ -78317,8 +78317,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._GamepadList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfGamepad()];
@@ -78343,8 +78343,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$._HTMLAllCollection, {
@@ -78508,26 +78508,26 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getNamedItem](name) {
-      return this.getNamedItem(name);
+    [dartx.getNamedItem](...args) {
+      return this.getNamedItem.apply(this, args);
     }
-    [dartx.getNamedItemNS](namespaceURI, localName) {
-      return this.getNamedItemNS(namespaceURI, localName);
+    [dartx.getNamedItemNS](...args) {
+      return this.getNamedItemNS.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.removeNamedItem](name) {
-      return this.removeNamedItem(name);
+    [dartx.removeNamedItem](...args) {
+      return this.removeNamedItem.apply(this, args);
     }
-    [dartx.removeNamedItemNS](namespaceURI, localName) {
-      return this.removeNamedItemNS(namespaceURI, localName);
+    [dartx.removeNamedItemNS](...args) {
+      return this.removeNamedItemNS.apply(this, args);
     }
-    [dartx.setNamedItem](attr) {
-      return this.setNamedItem(attr);
+    [dartx.setNamedItem](...args) {
+      return this.setNamedItem.apply(this, args);
     }
-    [dartx.setNamedItemNS](attr) {
-      return this.setNamedItemNS(attr);
+    [dartx.setNamedItemNS](...args) {
+      return this.setNamedItemNS.apply(this, args);
     }
   };
   html$._NamedNodeMap[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -78609,8 +78609,8 @@
     get [dartx.url]() {
       return this.url;
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
   };
   dart.setSignature(html$._Request, {
@@ -78736,8 +78736,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._SpeechRecognitionResultList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSpeechRecognitionResult()];
@@ -78811,11 +78811,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](name) {
-      return this.__getter__(name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._StyleSheetList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfStyleSheet()];
@@ -84007,11 +84007,11 @@
     get [dartx.viewportElement]() {
       return this.viewportElement;
     }
-    [dartx.blur]() {
-      return this.blur();
+    [dartx.blur](...args) {
+      return this.blur.apply(this, args);
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
     get [dartx.onAbort]() {
       return svg$.SvgElement.abortEvent.forElement(this);
@@ -84440,17 +84440,17 @@
     get [dartx.transform]() {
       return this.transform;
     }
-    [dartx.getBBox]() {
-      return this.getBBox();
+    [dartx.getBBox](...args) {
+      return this.getBBox.apply(this, args);
     }
-    [dartx.getCtm]() {
-      return this.getCTM();
+    [dartx.getCtm](...args) {
+      return this.getCTM.apply(this, args);
     }
-    [dartx.getScreenCtm]() {
-      return this.getScreenCTM();
+    [dartx.getScreenCtm](...args) {
+      return this.getScreenCTM.apply(this, args);
     }
-    [dartx.getTransformToElement](element) {
-      return this.getTransformToElement(element);
+    [dartx.getTransformToElement](...args) {
+      return this.getTransformToElement.apply(this, args);
     }
     get [dartx.requiredExtensions]() {
       return this.requiredExtensions;
@@ -84461,8 +84461,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.GraphicsElement, 'created');
@@ -84559,11 +84559,11 @@
     set [dartx.valueInSpecifiedUnits](value) {
       this.valueInSpecifiedUnits = value;
     }
-    [dartx.convertToSpecifiedUnits](unitType) {
-      return this.convertToSpecifiedUnits(unitType);
+    [dartx.convertToSpecifiedUnits](...args) {
+      return this.convertToSpecifiedUnits.apply(this, args);
     }
-    [dartx.newValueSpecifiedUnits](unitType, valueInSpecifiedUnits) {
-      return this.newValueSpecifiedUnits(unitType, valueInSpecifiedUnits);
+    [dartx.newValueSpecifiedUnits](...args) {
+      return this.newValueSpecifiedUnits.apply(this, args);
     }
   };
   dart.setSignature(svg$.Angle, {
@@ -84623,26 +84623,26 @@
     get [dartx.targetElement]() {
       return this.targetElement;
     }
-    [dartx.beginElement]() {
-      return this.beginElement();
+    [dartx.beginElement](...args) {
+      return this.beginElement.apply(this, args);
     }
-    [dartx.beginElementAt](offset) {
-      return this.beginElementAt(offset);
+    [dartx.beginElementAt](...args) {
+      return this.beginElementAt.apply(this, args);
     }
-    [dartx.endElement]() {
-      return this.endElement();
+    [dartx.endElement](...args) {
+      return this.endElement.apply(this, args);
     }
-    [dartx.endElementAt](offset) {
-      return this.endElementAt(offset);
+    [dartx.endElementAt](...args) {
+      return this.endElementAt.apply(this, args);
     }
-    [dartx.getCurrentTime]() {
-      return this.getCurrentTime();
+    [dartx.getCurrentTime](...args) {
+      return this.getCurrentTime.apply(this, args);
     }
-    [dartx.getSimpleDuration]() {
-      return this.getSimpleDuration();
+    [dartx.getSimpleDuration](...args) {
+      return this.getSimpleDuration.apply(this, args);
     }
-    [dartx.getStartTime]() {
-      return this.getStartTime();
+    [dartx.getStartTime](...args) {
+      return this.getStartTime.apply(this, args);
     }
     get [dartx.requiredExtensions]() {
       return this.requiredExtensions;
@@ -84653,8 +84653,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.AnimationElement, 'created');
@@ -85057,11 +85057,11 @@
     created() {
       super.created();
     }
-    [dartx.isPointInFill](point) {
-      return this.isPointInFill(point);
+    [dartx.isPointInFill](...args) {
+      return this.isPointInFill.apply(this, args);
     }
-    [dartx.isPointInStroke](point) {
-      return this.isPointInStroke(point);
+    [dartx.isPointInStroke](...args) {
+      return this.isPointInStroke.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.GeometryElement, 'created');
@@ -86187,8 +86187,8 @@
     get [dartx.stdDeviationY]() {
       return this.stdDeviationY;
     }
-    [dartx.setStdDeviation](stdDeviationX, stdDeviationY) {
-      return this.setStdDeviation(stdDeviationX, stdDeviationY);
+    [dartx.setStdDeviation](...args) {
+      return this.setStdDeviation.apply(this, args);
     }
     get [dartx.height]() {
       return this.height;
@@ -87273,11 +87273,11 @@
     set [dartx.valueInSpecifiedUnits](value) {
       this.valueInSpecifiedUnits = value;
     }
-    [dartx.convertToSpecifiedUnits](unitType) {
-      return this.convertToSpecifiedUnits(unitType);
+    [dartx.convertToSpecifiedUnits](...args) {
+      return this.convertToSpecifiedUnits.apply(this, args);
     }
-    [dartx.newValueSpecifiedUnits](unitType, valueInSpecifiedUnits) {
-      return this.newValueSpecifiedUnits(unitType, valueInSpecifiedUnits);
+    [dartx.newValueSpecifiedUnits](...args) {
+      return this.newValueSpecifiedUnits.apply(this, args);
     }
   };
   dart.setSignature(svg$.Length, {
@@ -87382,29 +87382,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.LengthList[dart.implements] = () => [ListOfLength()];
@@ -87636,11 +87636,11 @@
     get [dartx.refY]() {
       return this.refY;
     }
-    [dartx.setOrientToAngle](angle) {
-      return this.setOrientToAngle(angle);
+    [dartx.setOrientToAngle](...args) {
+      return this.setOrientToAngle.apply(this, args);
     }
-    [dartx.setOrientToAuto]() {
-      return this.setOrientToAuto();
+    [dartx.setOrientToAuto](...args) {
+      return this.setOrientToAuto.apply(this, args);
     }
     get [dartx.preserveAspectRatio]() {
       return this.preserveAspectRatio;
@@ -87746,8 +87746,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.MaskElement, 'created');
@@ -87831,38 +87831,38 @@
     set [dartx.f](value) {
       this.f = value;
     }
-    [dartx.flipX]() {
-      return this.flipX();
+    [dartx.flipX](...args) {
+      return this.flipX.apply(this, args);
     }
-    [dartx.flipY]() {
-      return this.flipY();
+    [dartx.flipY](...args) {
+      return this.flipY.apply(this, args);
     }
-    [dartx.inverse]() {
-      return this.inverse();
+    [dartx.inverse](...args) {
+      return this.inverse.apply(this, args);
     }
-    [dartx.multiply](secondMatrix) {
-      return this.multiply(secondMatrix);
+    [dartx.multiply](...args) {
+      return this.multiply.apply(this, args);
     }
-    [dartx.rotate](angle) {
-      return this.rotate(angle);
+    [dartx.rotate](...args) {
+      return this.rotate.apply(this, args);
     }
-    [dartx.rotateFromVector](x, y) {
-      return this.rotateFromVector(x, y);
+    [dartx.rotateFromVector](...args) {
+      return this.rotateFromVector.apply(this, args);
     }
-    [dartx.scale](scaleFactor) {
-      return this.scale(scaleFactor);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scaleNonUniform](scaleFactorX, scaleFactorY) {
-      return this.scaleNonUniform(scaleFactorX, scaleFactorY);
+    [dartx.scaleNonUniform](...args) {
+      return this.scaleNonUniform.apply(this, args);
     }
-    [dartx.skewX](angle) {
-      return this.skewX(angle);
+    [dartx.skewX](...args) {
+      return this.skewX.apply(this, args);
     }
-    [dartx.skewY](angle) {
-      return this.skewY(angle);
+    [dartx.skewY](...args) {
+      return this.skewY.apply(this, args);
     }
-    [dartx.translate](x, y) {
-      return this.translate(x, y);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
   };
   dart.setSignature(svg$.Matrix, {
@@ -87988,29 +87988,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.NumberList[dart.implements] = () => [ListOfNumber()];
@@ -88097,71 +88097,71 @@
     get [dartx.pathSegList]() {
       return this.pathSegList;
     }
-    [dartx.createSvgPathSegArcAbs](x, y, r1, r2, angle, largeArcFlag, sweepFlag) {
-      return this.createSVGPathSegArcAbs(x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+    [dartx.createSvgPathSegArcAbs](...args) {
+      return this.createSVGPathSegArcAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegArcRel](x, y, r1, r2, angle, largeArcFlag, sweepFlag) {
-      return this.createSVGPathSegArcRel(x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+    [dartx.createSvgPathSegArcRel](...args) {
+      return this.createSVGPathSegArcRel.apply(this, args);
     }
-    [dartx.createSvgPathSegClosePath]() {
-      return this.createSVGPathSegClosePath();
+    [dartx.createSvgPathSegClosePath](...args) {
+      return this.createSVGPathSegClosePath.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicAbs](x, y, x1, y1, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicAbs(x, y, x1, y1, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicAbs](...args) {
+      return this.createSVGPathSegCurvetoCubicAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicRel](x, y, x1, y1, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicRel(x, y, x1, y1, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicRel](...args) {
+      return this.createSVGPathSegCurvetoCubicRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicSmoothAbs](x, y, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicSmoothAbs(x, y, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicSmoothAbs](...args) {
+      return this.createSVGPathSegCurvetoCubicSmoothAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicSmoothRel](x, y, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicSmoothRel(x, y, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicSmoothRel](...args) {
+      return this.createSVGPathSegCurvetoCubicSmoothRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticAbs](x, y, x1, y1) {
-      return this.createSVGPathSegCurvetoQuadraticAbs(x, y, x1, y1);
+    [dartx.createSvgPathSegCurvetoQuadraticAbs](...args) {
+      return this.createSVGPathSegCurvetoQuadraticAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticRel](x, y, x1, y1) {
-      return this.createSVGPathSegCurvetoQuadraticRel(x, y, x1, y1);
+    [dartx.createSvgPathSegCurvetoQuadraticRel](...args) {
+      return this.createSVGPathSegCurvetoQuadraticRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticSmoothAbs](x, y) {
-      return this.createSVGPathSegCurvetoQuadraticSmoothAbs(x, y);
+    [dartx.createSvgPathSegCurvetoQuadraticSmoothAbs](...args) {
+      return this.createSVGPathSegCurvetoQuadraticSmoothAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticSmoothRel](x, y) {
-      return this.createSVGPathSegCurvetoQuadraticSmoothRel(x, y);
+    [dartx.createSvgPathSegCurvetoQuadraticSmoothRel](...args) {
+      return this.createSVGPathSegCurvetoQuadraticSmoothRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoAbs](x, y) {
-      return this.createSVGPathSegLinetoAbs(x, y);
+    [dartx.createSvgPathSegLinetoAbs](...args) {
+      return this.createSVGPathSegLinetoAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoHorizontalAbs](x) {
-      return this.createSVGPathSegLinetoHorizontalAbs(x);
+    [dartx.createSvgPathSegLinetoHorizontalAbs](...args) {
+      return this.createSVGPathSegLinetoHorizontalAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoHorizontalRel](x) {
-      return this.createSVGPathSegLinetoHorizontalRel(x);
+    [dartx.createSvgPathSegLinetoHorizontalRel](...args) {
+      return this.createSVGPathSegLinetoHorizontalRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoRel](x, y) {
-      return this.createSVGPathSegLinetoRel(x, y);
+    [dartx.createSvgPathSegLinetoRel](...args) {
+      return this.createSVGPathSegLinetoRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoVerticalAbs](y) {
-      return this.createSVGPathSegLinetoVerticalAbs(y);
+    [dartx.createSvgPathSegLinetoVerticalAbs](...args) {
+      return this.createSVGPathSegLinetoVerticalAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoVerticalRel](y) {
-      return this.createSVGPathSegLinetoVerticalRel(y);
+    [dartx.createSvgPathSegLinetoVerticalRel](...args) {
+      return this.createSVGPathSegLinetoVerticalRel.apply(this, args);
     }
-    [dartx.createSvgPathSegMovetoAbs](x, y) {
-      return this.createSVGPathSegMovetoAbs(x, y);
+    [dartx.createSvgPathSegMovetoAbs](...args) {
+      return this.createSVGPathSegMovetoAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegMovetoRel](x, y) {
-      return this.createSVGPathSegMovetoRel(x, y);
+    [dartx.createSvgPathSegMovetoRel](...args) {
+      return this.createSVGPathSegMovetoRel.apply(this, args);
     }
-    [dartx.getPathSegAtLength](distance) {
-      return this.getPathSegAtLength(distance);
+    [dartx.getPathSegAtLength](...args) {
+      return this.getPathSegAtLength.apply(this, args);
     }
-    [dartx.getPointAtLength](distance) {
-      return this.getPointAtLength(distance);
+    [dartx.getPointAtLength](...args) {
+      return this.getPointAtLength.apply(this, args);
     }
-    [dartx.getTotalLength]() {
-      return this.getTotalLength();
+    [dartx.getTotalLength](...args) {
+      return this.getTotalLength.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.PathElement, 'created');
@@ -88973,29 +88973,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.PathSegList[dart.implements] = () => [ListOfPathSeg()];
@@ -89156,8 +89156,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
     get [dartx.href]() {
       return this.href;
@@ -89210,8 +89210,8 @@
     set [dartx.y](value) {
       this.y = value;
     }
-    [dartx.matrixTransform](matrix) {
-      return this.matrixTransform(matrix);
+    [dartx.matrixTransform](...args) {
+      return this.matrixTransform.apply(this, args);
     }
   };
   dart.setSignature(svg$.Point, {
@@ -89244,29 +89244,29 @@
     get [dartx.numberOfItems]() {
       return this.numberOfItems;
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   dart.setSignature(svg$.PointList, {
@@ -89738,29 +89738,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](item, index) {
-      return this.insertItemBefore(item, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.StringList[dart.implements] = () => [ListOfString()];
@@ -89987,74 +89987,74 @@
     get [dartx.y]() {
       return this.y;
     }
-    [dartx.animationsPaused]() {
-      return this.animationsPaused();
+    [dartx.animationsPaused](...args) {
+      return this.animationsPaused.apply(this, args);
     }
-    [dartx.checkEnclosure](element, rect) {
-      return this.checkEnclosure(element, rect);
+    [dartx.checkEnclosure](...args) {
+      return this.checkEnclosure.apply(this, args);
     }
-    [dartx.checkIntersection](element, rect) {
-      return this.checkIntersection(element, rect);
+    [dartx.checkIntersection](...args) {
+      return this.checkIntersection.apply(this, args);
     }
-    [dartx.createSvgAngle]() {
-      return this.createSVGAngle();
+    [dartx.createSvgAngle](...args) {
+      return this.createSVGAngle.apply(this, args);
     }
-    [dartx.createSvgLength]() {
-      return this.createSVGLength();
+    [dartx.createSvgLength](...args) {
+      return this.createSVGLength.apply(this, args);
     }
-    [dartx.createSvgMatrix]() {
-      return this.createSVGMatrix();
+    [dartx.createSvgMatrix](...args) {
+      return this.createSVGMatrix.apply(this, args);
     }
-    [dartx.createSvgNumber]() {
-      return this.createSVGNumber();
+    [dartx.createSvgNumber](...args) {
+      return this.createSVGNumber.apply(this, args);
     }
-    [dartx.createSvgPoint]() {
-      return this.createSVGPoint();
+    [dartx.createSvgPoint](...args) {
+      return this.createSVGPoint.apply(this, args);
     }
-    [dartx.createSvgRect]() {
-      return this.createSVGRect();
+    [dartx.createSvgRect](...args) {
+      return this.createSVGRect.apply(this, args);
     }
-    [dartx.createSvgTransform]() {
-      return this.createSVGTransform();
+    [dartx.createSvgTransform](...args) {
+      return this.createSVGTransform.apply(this, args);
     }
-    [dartx.createSvgTransformFromMatrix](matrix) {
-      return this.createSVGTransformFromMatrix(matrix);
+    [dartx.createSvgTransformFromMatrix](...args) {
+      return this.createSVGTransformFromMatrix.apply(this, args);
     }
-    [dartx.deselectAll]() {
-      return this.deselectAll();
+    [dartx.deselectAll](...args) {
+      return this.deselectAll.apply(this, args);
     }
-    [dartx.forceRedraw]() {
-      return this.forceRedraw();
+    [dartx.forceRedraw](...args) {
+      return this.forceRedraw.apply(this, args);
     }
-    [dartx.getCurrentTime]() {
-      return this.getCurrentTime();
+    [dartx.getCurrentTime](...args) {
+      return this.getCurrentTime.apply(this, args);
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
-    [dartx.getEnclosureList](rect, referenceElement) {
-      return this.getEnclosureList(rect, referenceElement);
+    [dartx.getEnclosureList](...args) {
+      return this.getEnclosureList.apply(this, args);
     }
-    [dartx.getIntersectionList](rect, referenceElement) {
-      return this.getIntersectionList(rect, referenceElement);
+    [dartx.getIntersectionList](...args) {
+      return this.getIntersectionList.apply(this, args);
     }
-    [dartx.pauseAnimations]() {
-      return this.pauseAnimations();
+    [dartx.pauseAnimations](...args) {
+      return this.pauseAnimations.apply(this, args);
     }
-    [dartx.setCurrentTime](seconds) {
-      return this.setCurrentTime(seconds);
+    [dartx.setCurrentTime](...args) {
+      return this.setCurrentTime.apply(this, args);
     }
-    [dartx.suspendRedraw](maxWaitMilliseconds) {
-      return this.suspendRedraw(maxWaitMilliseconds);
+    [dartx.suspendRedraw](...args) {
+      return this.suspendRedraw.apply(this, args);
     }
-    [dartx.unpauseAnimations]() {
-      return this.unpauseAnimations();
+    [dartx.unpauseAnimations](...args) {
+      return this.unpauseAnimations.apply(this, args);
     }
-    [dartx.unsuspendRedraw](suspendHandleId) {
-      return this.unsuspendRedraw(suspendHandleId);
+    [dartx.unsuspendRedraw](...args) {
+      return this.unsuspendRedraw.apply(this, args);
     }
-    [dartx.unsuspendRedrawAll]() {
-      return this.unsuspendRedrawAll();
+    [dartx.unsuspendRedrawAll](...args) {
+      return this.unsuspendRedrawAll.apply(this, args);
     }
     get [dartx.preserveAspectRatio]() {
       return this.preserveAspectRatio;
@@ -90207,32 +90207,32 @@
     get [dartx.textLength]() {
       return this.textLength;
     }
-    [dartx.getCharNumAtPosition](point) {
-      return this.getCharNumAtPosition(point);
+    [dartx.getCharNumAtPosition](...args) {
+      return this.getCharNumAtPosition.apply(this, args);
     }
-    [dartx.getComputedTextLength]() {
-      return this.getComputedTextLength();
+    [dartx.getComputedTextLength](...args) {
+      return this.getComputedTextLength.apply(this, args);
     }
-    [dartx.getEndPositionOfChar](charnum) {
-      return this.getEndPositionOfChar(charnum);
+    [dartx.getEndPositionOfChar](...args) {
+      return this.getEndPositionOfChar.apply(this, args);
     }
-    [dartx.getExtentOfChar](charnum) {
-      return this.getExtentOfChar(charnum);
+    [dartx.getExtentOfChar](...args) {
+      return this.getExtentOfChar.apply(this, args);
     }
-    [dartx.getNumberOfChars]() {
-      return this.getNumberOfChars();
+    [dartx.getNumberOfChars](...args) {
+      return this.getNumberOfChars.apply(this, args);
     }
-    [dartx.getRotationOfChar](charnum) {
-      return this.getRotationOfChar(charnum);
+    [dartx.getRotationOfChar](...args) {
+      return this.getRotationOfChar.apply(this, args);
     }
-    [dartx.getStartPositionOfChar](charnum) {
-      return this.getStartPositionOfChar(charnum);
+    [dartx.getStartPositionOfChar](...args) {
+      return this.getStartPositionOfChar.apply(this, args);
     }
-    [dartx.getSubStringLength](charnum, nchars) {
-      return this.getSubStringLength(charnum, nchars);
+    [dartx.getSubStringLength](...args) {
+      return this.getSubStringLength.apply(this, args);
     }
-    [dartx.selectSubString](charnum, nchars) {
-      return this.selectSubString(charnum, nchars);
+    [dartx.selectSubString](...args) {
+      return this.selectSubString.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.TextContentElement, 'created');
@@ -90499,23 +90499,23 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.setMatrix](matrix) {
-      return this.setMatrix(matrix);
+    [dartx.setMatrix](...args) {
+      return this.setMatrix.apply(this, args);
     }
-    [dartx.setRotate](angle, cx, cy) {
-      return this.setRotate(angle, cx, cy);
+    [dartx.setRotate](...args) {
+      return this.setRotate.apply(this, args);
     }
-    [dartx.setScale](sx, sy) {
-      return this.setScale(sx, sy);
+    [dartx.setScale](...args) {
+      return this.setScale.apply(this, args);
     }
-    [dartx.setSkewX](angle) {
-      return this.setSkewX(angle);
+    [dartx.setSkewX](...args) {
+      return this.setSkewX.apply(this, args);
     }
-    [dartx.setSkewY](angle) {
-      return this.setSkewY(angle);
+    [dartx.setSkewY](...args) {
+      return this.setSkewY.apply(this, args);
     }
-    [dartx.setTranslate](tx, ty) {
-      return this.setTranslate(tx, ty);
+    [dartx.setTranslate](...args) {
+      return this.setTranslate.apply(this, args);
     }
   };
   dart.setSignature(svg$.Transform, {
@@ -90616,35 +90616,35 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.consolidate]() {
-      return this.consolidate();
+    [dartx.consolidate](...args) {
+      return this.consolidate.apply(this, args);
     }
-    [dartx.createSvgTransformFromMatrix](matrix) {
-      return this.createSVGTransformFromMatrix(matrix);
+    [dartx.createSvgTransformFromMatrix](...args) {
+      return this.createSVGTransformFromMatrix.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.TransformList[dart.implements] = () => [ListOfTransform()];
@@ -91052,11 +91052,11 @@
     get [dartx.numberOfOutputs]() {
       return this.numberOfOutputs;
     }
-    [_connect](destination, output, input) {
-      return this.connect(destination, output, input);
+    [_connect](...args) {
+      return this.connect.apply(this, args);
     }
-    [dartx.disconnect](output) {
-      return this.disconnect(output);
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
     [dartx.connectNode](destination, output, input) {
       if (output === void 0) output = 0;
@@ -91128,17 +91128,17 @@
     set [dartx.smoothingTimeConstant](value) {
       this.smoothingTimeConstant = value;
     }
-    [dartx.getByteFrequencyData](array) {
-      return this.getByteFrequencyData(array);
+    [dartx.getByteFrequencyData](...args) {
+      return this.getByteFrequencyData.apply(this, args);
     }
-    [dartx.getByteTimeDomainData](array) {
-      return this.getByteTimeDomainData(array);
+    [dartx.getByteTimeDomainData](...args) {
+      return this.getByteTimeDomainData.apply(this, args);
     }
-    [dartx.getFloatFrequencyData](array) {
-      return this.getFloatFrequencyData(array);
+    [dartx.getFloatFrequencyData](...args) {
+      return this.getFloatFrequencyData.apply(this, args);
     }
-    [dartx.getFloatTimeDomainData](array) {
-      return this.getFloatTimeDomainData(array);
+    [dartx.getFloatTimeDomainData](...args) {
+      return this.getFloatTimeDomainData.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AnalyserNode, {
@@ -91182,8 +91182,8 @@
     get [dartx.sampleRate]() {
       return this.sampleRate;
     }
-    [dartx.getChannelData](channelIndex) {
-      return this.getChannelData(channelIndex);
+    [dartx.getChannelData](...args) {
+      return this.getChannelData.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioBuffer, {
@@ -91345,59 +91345,59 @@
     get [dartx.sampleRate]() {
       return this.sampleRate;
     }
-    [dartx.createAnalyser]() {
-      return this.createAnalyser();
+    [dartx.createAnalyser](...args) {
+      return this.createAnalyser.apply(this, args);
     }
-    [dartx.createBiquadFilter]() {
-      return this.createBiquadFilter();
+    [dartx.createBiquadFilter](...args) {
+      return this.createBiquadFilter.apply(this, args);
     }
-    [dartx.createBuffer](numberOfChannels, numberOfFrames, sampleRate) {
-      return this.createBuffer(numberOfChannels, numberOfFrames, sampleRate);
+    [dartx.createBuffer](...args) {
+      return this.createBuffer.apply(this, args);
     }
-    [dartx.createBufferSource]() {
-      return this.createBufferSource();
+    [dartx.createBufferSource](...args) {
+      return this.createBufferSource.apply(this, args);
     }
-    [dartx.createChannelMerger](numberOfInputs) {
-      return this.createChannelMerger(numberOfInputs);
+    [dartx.createChannelMerger](...args) {
+      return this.createChannelMerger.apply(this, args);
     }
-    [dartx.createChannelSplitter](numberOfOutputs) {
-      return this.createChannelSplitter(numberOfOutputs);
+    [dartx.createChannelSplitter](...args) {
+      return this.createChannelSplitter.apply(this, args);
     }
-    [dartx.createConvolver]() {
-      return this.createConvolver();
+    [dartx.createConvolver](...args) {
+      return this.createConvolver.apply(this, args);
     }
-    [dartx.createDelay](maxDelayTime) {
-      return this.createDelay(maxDelayTime);
+    [dartx.createDelay](...args) {
+      return this.createDelay.apply(this, args);
     }
-    [dartx.createDynamicsCompressor]() {
-      return this.createDynamicsCompressor();
+    [dartx.createDynamicsCompressor](...args) {
+      return this.createDynamicsCompressor.apply(this, args);
     }
-    [dartx.createMediaElementSource](mediaElement) {
-      return this.createMediaElementSource(mediaElement);
+    [dartx.createMediaElementSource](...args) {
+      return this.createMediaElementSource.apply(this, args);
     }
-    [dartx.createMediaStreamDestination]() {
-      return this.createMediaStreamDestination();
+    [dartx.createMediaStreamDestination](...args) {
+      return this.createMediaStreamDestination.apply(this, args);
     }
-    [dartx.createMediaStreamSource](mediaStream) {
-      return this.createMediaStreamSource(mediaStream);
+    [dartx.createMediaStreamSource](...args) {
+      return this.createMediaStreamSource.apply(this, args);
     }
-    [dartx.createOscillator]() {
-      return this.createOscillator();
+    [dartx.createOscillator](...args) {
+      return this.createOscillator.apply(this, args);
     }
-    [dartx.createPanner]() {
-      return this.createPanner();
+    [dartx.createPanner](...args) {
+      return this.createPanner.apply(this, args);
     }
-    [dartx.createPeriodicWave](real, imag) {
-      return this.createPeriodicWave(real, imag);
+    [dartx.createPeriodicWave](...args) {
+      return this.createPeriodicWave.apply(this, args);
     }
-    [dartx.createWaveShaper]() {
-      return this.createWaveShaper();
+    [dartx.createWaveShaper](...args) {
+      return this.createWaveShaper.apply(this, args);
     }
-    [_decodeAudioData](audioData, successCallback, errorCallback) {
-      return this.decodeAudioData(audioData, successCallback, errorCallback);
+    [_decodeAudioData](...args) {
+      return this.decodeAudioData.apply(this, args);
     }
-    [dartx.startRendering]() {
-      return this.startRendering();
+    [dartx.startRendering](...args) {
+      return this.startRendering.apply(this, args);
     }
     get [dartx.onComplete]() {
       return web_audio.AudioContext.completeEvent.forTarget(this);
@@ -91518,14 +91518,14 @@
     set [dartx.speedOfSound](value) {
       this.speedOfSound = value;
     }
-    [dartx.setOrientation](x, y, z, xUp, yUp, zUp) {
-      return this.setOrientation(x, y, z, xUp, yUp, zUp);
+    [dartx.setOrientation](...args) {
+      return this.setOrientation.apply(this, args);
     }
-    [dartx.setPosition](x, y, z) {
-      return this.setPosition(x, y, z);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
-    [dartx.setVelocity](x, y, z) {
-      return this.setVelocity(x, y, z);
+    [dartx.setVelocity](...args) {
+      return this.setVelocity.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioListener, {
@@ -91564,23 +91564,23 @@
     set [dartx.value](value) {
       this.value = value;
     }
-    [dartx.cancelScheduledValues](startTime) {
-      return this.cancelScheduledValues(startTime);
+    [dartx.cancelScheduledValues](...args) {
+      return this.cancelScheduledValues.apply(this, args);
     }
-    [dartx.exponentialRampToValueAtTime](value, time) {
-      return this.exponentialRampToValueAtTime(value, time);
+    [dartx.exponentialRampToValueAtTime](...args) {
+      return this.exponentialRampToValueAtTime.apply(this, args);
     }
-    [dartx.linearRampToValueAtTime](value, time) {
-      return this.linearRampToValueAtTime(value, time);
+    [dartx.linearRampToValueAtTime](...args) {
+      return this.linearRampToValueAtTime.apply(this, args);
     }
-    [dartx.setTargetAtTime](target, time, timeConstant) {
-      return this.setTargetAtTime(target, time, timeConstant);
+    [dartx.setTargetAtTime](...args) {
+      return this.setTargetAtTime.apply(this, args);
     }
-    [dartx.setValueAtTime](value, time) {
-      return this.setValueAtTime(value, time);
+    [dartx.setValueAtTime](...args) {
+      return this.setValueAtTime.apply(this, args);
     }
-    [dartx.setValueCurveAtTime](values, time, duration) {
-      return this.setValueCurveAtTime(values, time, duration);
+    [dartx.setValueCurveAtTime](...args) {
+      return this.setValueCurveAtTime.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioParam, {
@@ -91657,8 +91657,8 @@
     set [dartx.type](value) {
       this.type = value;
     }
-    [dartx.getFrequencyResponse](frequencyHz, magResponse, phaseResponse) {
-      return this.getFrequencyResponse(frequencyHz, magResponse, phaseResponse);
+    [dartx.getFrequencyResponse](...args) {
+      return this.getFrequencyResponse.apply(this, args);
     }
   };
   dart.setSignature(web_audio.BiquadFilterNode, {
@@ -91909,20 +91909,20 @@
     set [dartx.type](value) {
       this.type = value;
     }
-    [dartx.noteOff](when) {
-      return this.noteOff(when);
+    [dartx.noteOff](...args) {
+      return this.noteOff.apply(this, args);
     }
-    [dartx.noteOn](when) {
-      return this.noteOn(when);
+    [dartx.noteOn](...args) {
+      return this.noteOn.apply(this, args);
     }
-    [dartx.setPeriodicWave](periodicWave) {
-      return this.setPeriodicWave(periodicWave);
+    [dartx.setPeriodicWave](...args) {
+      return this.setPeriodicWave.apply(this, args);
     }
-    [dartx.start](when) {
-      return this.start(when);
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
-    [dartx.stop](when) {
-      return this.stop(when);
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onEnded]() {
       return web_audio.OscillatorNode.endedEvent.forTarget(this);
@@ -92013,14 +92013,14 @@
     set [dartx.rolloffFactor](value) {
       this.rolloffFactor = value;
     }
-    [dartx.setOrientation](x, y, z) {
-      return this.setOrientation(x, y, z);
+    [dartx.setOrientation](...args) {
+      return this.setOrientation.apply(this, args);
     }
-    [dartx.setPosition](x, y, z) {
-      return this.setPosition(x, y, z);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
-    [dartx.setVelocity](x, y, z) {
-      return this.setVelocity(x, y, z);
+    [dartx.setVelocity](...args) {
+      return this.setVelocity.apply(this, args);
     }
   };
   dart.setSignature(web_audio.PannerNode, {
@@ -92065,8 +92065,8 @@
     get [dartx.bufferSize]() {
       return this.bufferSize;
     }
-    [dartx.setEventListener](eventListener) {
-      return this.setEventListener(eventListener);
+    [dartx.setEventListener](...args) {
+      return this.setEventListener.apply(this, args);
     }
     get [dartx.onAudioProcess]() {
       return web_audio.ScriptProcessorNode.audioProcessEvent.forTarget(this);
@@ -92297,323 +92297,323 @@
     get [dartx.drawingBufferWidth]() {
       return this.drawingBufferWidth;
     }
-    [dartx.activeTexture](texture) {
-      return this.activeTexture(texture);
+    [dartx.activeTexture](...args) {
+      return this.activeTexture.apply(this, args);
     }
-    [dartx.attachShader](program, shader) {
-      return this.attachShader(program, shader);
+    [dartx.attachShader](...args) {
+      return this.attachShader.apply(this, args);
     }
-    [dartx.bindAttribLocation](program, index, name) {
-      return this.bindAttribLocation(program, index, name);
+    [dartx.bindAttribLocation](...args) {
+      return this.bindAttribLocation.apply(this, args);
     }
-    [dartx.bindBuffer](target, buffer) {
-      return this.bindBuffer(target, buffer);
+    [dartx.bindBuffer](...args) {
+      return this.bindBuffer.apply(this, args);
     }
-    [dartx.bindFramebuffer](target, framebuffer) {
-      return this.bindFramebuffer(target, framebuffer);
+    [dartx.bindFramebuffer](...args) {
+      return this.bindFramebuffer.apply(this, args);
     }
-    [dartx.bindRenderbuffer](target, renderbuffer) {
-      return this.bindRenderbuffer(target, renderbuffer);
+    [dartx.bindRenderbuffer](...args) {
+      return this.bindRenderbuffer.apply(this, args);
     }
-    [dartx.bindTexture](target, texture) {
-      return this.bindTexture(target, texture);
+    [dartx.bindTexture](...args) {
+      return this.bindTexture.apply(this, args);
     }
-    [dartx.blendColor](red, green, blue, alpha) {
-      return this.blendColor(red, green, blue, alpha);
+    [dartx.blendColor](...args) {
+      return this.blendColor.apply(this, args);
     }
-    [dartx.blendEquation](mode) {
-      return this.blendEquation(mode);
+    [dartx.blendEquation](...args) {
+      return this.blendEquation.apply(this, args);
     }
-    [dartx.blendEquationSeparate](modeRGB, modeAlpha) {
-      return this.blendEquationSeparate(modeRGB, modeAlpha);
+    [dartx.blendEquationSeparate](...args) {
+      return this.blendEquationSeparate.apply(this, args);
     }
-    [dartx.blendFunc](sfactor, dfactor) {
-      return this.blendFunc(sfactor, dfactor);
+    [dartx.blendFunc](...args) {
+      return this.blendFunc.apply(this, args);
     }
-    [dartx.blendFuncSeparate](srcRGB, dstRGB, srcAlpha, dstAlpha) {
-      return this.blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
+    [dartx.blendFuncSeparate](...args) {
+      return this.blendFuncSeparate.apply(this, args);
     }
-    [dartx.bufferByteData](target, data, usage) {
-      return this.bufferData(target, data, usage);
+    [dartx.bufferByteData](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferData](target, data_OR_size, usage) {
-      return this.bufferData(target, data_OR_size, usage);
+    [dartx.bufferData](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferDataTyped](target, data, usage) {
-      return this.bufferData(target, data, usage);
+    [dartx.bufferDataTyped](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferSubByteData](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubByteData](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.bufferSubData](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubData](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.bufferSubDataTyped](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubDataTyped](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.checkFramebufferStatus](target) {
-      return this.checkFramebufferStatus(target);
+    [dartx.checkFramebufferStatus](...args) {
+      return this.checkFramebufferStatus.apply(this, args);
     }
-    [dartx.clear](mask) {
-      return this.clear(mask);
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.clearColor](red, green, blue, alpha) {
-      return this.clearColor(red, green, blue, alpha);
+    [dartx.clearColor](...args) {
+      return this.clearColor.apply(this, args);
     }
-    [dartx.clearDepth](depth) {
-      return this.clearDepth(depth);
+    [dartx.clearDepth](...args) {
+      return this.clearDepth.apply(this, args);
     }
-    [dartx.clearStencil](s) {
-      return this.clearStencil(s);
+    [dartx.clearStencil](...args) {
+      return this.clearStencil.apply(this, args);
     }
-    [dartx.colorMask](red, green, blue, alpha) {
-      return this.colorMask(red, green, blue, alpha);
+    [dartx.colorMask](...args) {
+      return this.colorMask.apply(this, args);
     }
-    [dartx.compileShader](shader) {
-      return this.compileShader(shader);
+    [dartx.compileShader](...args) {
+      return this.compileShader.apply(this, args);
     }
-    [dartx.compressedTexImage2D](target, level, internalformat, width, height, border, data) {
-      return this.compressedTexImage2D(target, level, internalformat, width, height, border, data);
+    [dartx.compressedTexImage2D](...args) {
+      return this.compressedTexImage2D.apply(this, args);
     }
-    [dartx.compressedTexSubImage2D](target, level, xoffset, yoffset, width, height, format, data) {
-      return this.compressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, data);
+    [dartx.compressedTexSubImage2D](...args) {
+      return this.compressedTexSubImage2D.apply(this, args);
     }
-    [dartx.copyTexImage2D](target, level, internalformat, x, y, width, height, border) {
-      return this.copyTexImage2D(target, level, internalformat, x, y, width, height, border);
+    [dartx.copyTexImage2D](...args) {
+      return this.copyTexImage2D.apply(this, args);
     }
-    [dartx.copyTexSubImage2D](target, level, xoffset, yoffset, x, y, width, height) {
-      return this.copyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+    [dartx.copyTexSubImage2D](...args) {
+      return this.copyTexSubImage2D.apply(this, args);
     }
-    [dartx.createBuffer]() {
-      return this.createBuffer();
+    [dartx.createBuffer](...args) {
+      return this.createBuffer.apply(this, args);
     }
-    [dartx.createFramebuffer]() {
-      return this.createFramebuffer();
+    [dartx.createFramebuffer](...args) {
+      return this.createFramebuffer.apply(this, args);
     }
-    [dartx.createProgram]() {
-      return this.createProgram();
+    [dartx.createProgram](...args) {
+      return this.createProgram.apply(this, args);
     }
-    [dartx.createRenderbuffer]() {
-      return this.createRenderbuffer();
+    [dartx.createRenderbuffer](...args) {
+      return this.createRenderbuffer.apply(this, args);
     }
-    [dartx.createShader](type) {
-      return this.createShader(type);
+    [dartx.createShader](...args) {
+      return this.createShader.apply(this, args);
     }
-    [dartx.createTexture]() {
-      return this.createTexture();
+    [dartx.createTexture](...args) {
+      return this.createTexture.apply(this, args);
     }
-    [dartx.cullFace](mode) {
-      return this.cullFace(mode);
+    [dartx.cullFace](...args) {
+      return this.cullFace.apply(this, args);
     }
-    [dartx.deleteBuffer](buffer) {
-      return this.deleteBuffer(buffer);
+    [dartx.deleteBuffer](...args) {
+      return this.deleteBuffer.apply(this, args);
     }
-    [dartx.deleteFramebuffer](framebuffer) {
-      return this.deleteFramebuffer(framebuffer);
+    [dartx.deleteFramebuffer](...args) {
+      return this.deleteFramebuffer.apply(this, args);
     }
-    [dartx.deleteProgram](program) {
-      return this.deleteProgram(program);
+    [dartx.deleteProgram](...args) {
+      return this.deleteProgram.apply(this, args);
     }
-    [dartx.deleteRenderbuffer](renderbuffer) {
-      return this.deleteRenderbuffer(renderbuffer);
+    [dartx.deleteRenderbuffer](...args) {
+      return this.deleteRenderbuffer.apply(this, args);
     }
-    [dartx.deleteShader](shader) {
-      return this.deleteShader(shader);
+    [dartx.deleteShader](...args) {
+      return this.deleteShader.apply(this, args);
     }
-    [dartx.deleteTexture](texture) {
-      return this.deleteTexture(texture);
+    [dartx.deleteTexture](...args) {
+      return this.deleteTexture.apply(this, args);
     }
-    [dartx.depthFunc](func) {
-      return this.depthFunc(func);
+    [dartx.depthFunc](...args) {
+      return this.depthFunc.apply(this, args);
     }
-    [dartx.depthMask](flag) {
-      return this.depthMask(flag);
+    [dartx.depthMask](...args) {
+      return this.depthMask.apply(this, args);
     }
-    [dartx.depthRange](zNear, zFar) {
-      return this.depthRange(zNear, zFar);
+    [dartx.depthRange](...args) {
+      return this.depthRange.apply(this, args);
     }
-    [dartx.detachShader](program, shader) {
-      return this.detachShader(program, shader);
+    [dartx.detachShader](...args) {
+      return this.detachShader.apply(this, args);
     }
-    [dartx.disable](cap) {
-      return this.disable(cap);
+    [dartx.disable](...args) {
+      return this.disable.apply(this, args);
     }
-    [dartx.disableVertexAttribArray](index) {
-      return this.disableVertexAttribArray(index);
+    [dartx.disableVertexAttribArray](...args) {
+      return this.disableVertexAttribArray.apply(this, args);
     }
-    [dartx.drawArrays](mode, first, count) {
-      return this.drawArrays(mode, first, count);
+    [dartx.drawArrays](...args) {
+      return this.drawArrays.apply(this, args);
     }
-    [dartx.drawElements](mode, count, type, offset) {
-      return this.drawElements(mode, count, type, offset);
+    [dartx.drawElements](...args) {
+      return this.drawElements.apply(this, args);
     }
-    [dartx.enable](cap) {
-      return this.enable(cap);
+    [dartx.enable](...args) {
+      return this.enable.apply(this, args);
     }
-    [dartx.enableVertexAttribArray](index) {
-      return this.enableVertexAttribArray(index);
+    [dartx.enableVertexAttribArray](...args) {
+      return this.enableVertexAttribArray.apply(this, args);
     }
-    [dartx.finish]() {
-      return this.finish();
+    [dartx.finish](...args) {
+      return this.finish.apply(this, args);
     }
-    [dartx.flush]() {
-      return this.flush();
+    [dartx.flush](...args) {
+      return this.flush.apply(this, args);
     }
-    [dartx.framebufferRenderbuffer](target, attachment, renderbuffertarget, renderbuffer) {
-      return this.framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+    [dartx.framebufferRenderbuffer](...args) {
+      return this.framebufferRenderbuffer.apply(this, args);
     }
-    [dartx.framebufferTexture2D](target, attachment, textarget, texture, level) {
-      return this.framebufferTexture2D(target, attachment, textarget, texture, level);
+    [dartx.framebufferTexture2D](...args) {
+      return this.framebufferTexture2D.apply(this, args);
     }
-    [dartx.frontFace](mode) {
-      return this.frontFace(mode);
+    [dartx.frontFace](...args) {
+      return this.frontFace.apply(this, args);
     }
-    [dartx.generateMipmap](target) {
-      return this.generateMipmap(target);
+    [dartx.generateMipmap](...args) {
+      return this.generateMipmap.apply(this, args);
     }
-    [dartx.getActiveAttrib](program, index) {
-      return this.getActiveAttrib(program, index);
+    [dartx.getActiveAttrib](...args) {
+      return this.getActiveAttrib.apply(this, args);
     }
-    [dartx.getActiveUniform](program, index) {
-      return this.getActiveUniform(program, index);
+    [dartx.getActiveUniform](...args) {
+      return this.getActiveUniform.apply(this, args);
     }
-    [dartx.getAttachedShaders](program) {
-      return this.getAttachedShaders(program);
+    [dartx.getAttachedShaders](...args) {
+      return this.getAttachedShaders.apply(this, args);
     }
-    [dartx.getAttribLocation](program, name) {
-      return this.getAttribLocation(program, name);
+    [dartx.getAttribLocation](...args) {
+      return this.getAttribLocation.apply(this, args);
     }
-    [dartx.getBufferParameter](target, pname) {
-      return this.getBufferParameter(target, pname);
+    [dartx.getBufferParameter](...args) {
+      return this.getBufferParameter.apply(this, args);
     }
     [dartx.getContextAttributes]() {
       return web_gl.ContextAttributes._check(html_common.convertNativeToDart_ContextAttributes(this[_getContextAttributes_1$]()));
     }
-    [_getContextAttributes_1$]() {
-      return this.getContextAttributes();
+    [_getContextAttributes_1$](...args) {
+      return this.getContextAttributes.apply(this, args);
     }
-    [dartx.getError]() {
-      return this.getError();
+    [dartx.getError](...args) {
+      return this.getError.apply(this, args);
     }
-    [dartx.getExtension](name) {
-      return this.getExtension(name);
+    [dartx.getExtension](...args) {
+      return this.getExtension.apply(this, args);
     }
-    [dartx.getFramebufferAttachmentParameter](target, attachment, pname) {
-      return this.getFramebufferAttachmentParameter(target, attachment, pname);
+    [dartx.getFramebufferAttachmentParameter](...args) {
+      return this.getFramebufferAttachmentParameter.apply(this, args);
     }
-    [dartx.getParameter](pname) {
-      return this.getParameter(pname);
+    [dartx.getParameter](...args) {
+      return this.getParameter.apply(this, args);
     }
-    [dartx.getProgramInfoLog](program) {
-      return this.getProgramInfoLog(program);
+    [dartx.getProgramInfoLog](...args) {
+      return this.getProgramInfoLog.apply(this, args);
     }
-    [dartx.getProgramParameter](program, pname) {
-      return this.getProgramParameter(program, pname);
+    [dartx.getProgramParameter](...args) {
+      return this.getProgramParameter.apply(this, args);
     }
-    [dartx.getRenderbufferParameter](target, pname) {
-      return this.getRenderbufferParameter(target, pname);
+    [dartx.getRenderbufferParameter](...args) {
+      return this.getRenderbufferParameter.apply(this, args);
     }
-    [dartx.getShaderInfoLog](shader) {
-      return this.getShaderInfoLog(shader);
+    [dartx.getShaderInfoLog](...args) {
+      return this.getShaderInfoLog.apply(this, args);
     }
-    [dartx.getShaderParameter](shader, pname) {
-      return this.getShaderParameter(shader, pname);
+    [dartx.getShaderParameter](...args) {
+      return this.getShaderParameter.apply(this, args);
     }
-    [dartx.getShaderPrecisionFormat](shadertype, precisiontype) {
-      return this.getShaderPrecisionFormat(shadertype, precisiontype);
+    [dartx.getShaderPrecisionFormat](...args) {
+      return this.getShaderPrecisionFormat.apply(this, args);
     }
-    [dartx.getShaderSource](shader) {
-      return this.getShaderSource(shader);
+    [dartx.getShaderSource](...args) {
+      return this.getShaderSource.apply(this, args);
     }
-    [dartx.getSupportedExtensions]() {
-      return this.getSupportedExtensions();
+    [dartx.getSupportedExtensions](...args) {
+      return this.getSupportedExtensions.apply(this, args);
     }
-    [dartx.getTexParameter](target, pname) {
-      return this.getTexParameter(target, pname);
+    [dartx.getTexParameter](...args) {
+      return this.getTexParameter.apply(this, args);
     }
-    [dartx.getUniform](program, location) {
-      return this.getUniform(program, location);
+    [dartx.getUniform](...args) {
+      return this.getUniform.apply(this, args);
     }
-    [dartx.getUniformLocation](program, name) {
-      return this.getUniformLocation(program, name);
+    [dartx.getUniformLocation](...args) {
+      return this.getUniformLocation.apply(this, args);
     }
-    [dartx.getVertexAttrib](index, pname) {
-      return this.getVertexAttrib(index, pname);
+    [dartx.getVertexAttrib](...args) {
+      return this.getVertexAttrib.apply(this, args);
     }
-    [dartx.getVertexAttribOffset](index, pname) {
-      return this.getVertexAttribOffset(index, pname);
+    [dartx.getVertexAttribOffset](...args) {
+      return this.getVertexAttribOffset.apply(this, args);
     }
-    [dartx.hint](target, mode) {
-      return this.hint(target, mode);
+    [dartx.hint](...args) {
+      return this.hint.apply(this, args);
     }
-    [dartx.isBuffer](buffer) {
-      return this.isBuffer(buffer);
+    [dartx.isBuffer](...args) {
+      return this.isBuffer.apply(this, args);
     }
-    [dartx.isContextLost]() {
-      return this.isContextLost();
+    [dartx.isContextLost](...args) {
+      return this.isContextLost.apply(this, args);
     }
-    [dartx.isEnabled](cap) {
-      return this.isEnabled(cap);
+    [dartx.isEnabled](...args) {
+      return this.isEnabled.apply(this, args);
     }
-    [dartx.isFramebuffer](framebuffer) {
-      return this.isFramebuffer(framebuffer);
+    [dartx.isFramebuffer](...args) {
+      return this.isFramebuffer.apply(this, args);
     }
-    [dartx.isProgram](program) {
-      return this.isProgram(program);
+    [dartx.isProgram](...args) {
+      return this.isProgram.apply(this, args);
     }
-    [dartx.isRenderbuffer](renderbuffer) {
-      return this.isRenderbuffer(renderbuffer);
+    [dartx.isRenderbuffer](...args) {
+      return this.isRenderbuffer.apply(this, args);
     }
-    [dartx.isShader](shader) {
-      return this.isShader(shader);
+    [dartx.isShader](...args) {
+      return this.isShader.apply(this, args);
     }
-    [dartx.isTexture](texture) {
-      return this.isTexture(texture);
+    [dartx.isTexture](...args) {
+      return this.isTexture.apply(this, args);
     }
-    [dartx.lineWidth](width) {
-      return this.lineWidth(width);
+    [dartx.lineWidth](...args) {
+      return this.lineWidth.apply(this, args);
     }
-    [dartx.linkProgram](program) {
-      return this.linkProgram(program);
+    [dartx.linkProgram](...args) {
+      return this.linkProgram.apply(this, args);
     }
-    [dartx.pixelStorei](pname, param) {
-      return this.pixelStorei(pname, param);
+    [dartx.pixelStorei](...args) {
+      return this.pixelStorei.apply(this, args);
     }
-    [dartx.polygonOffset](factor, units) {
-      return this.polygonOffset(factor, units);
+    [dartx.polygonOffset](...args) {
+      return this.polygonOffset.apply(this, args);
     }
-    [dartx.readPixels](x, y, width, height, format, type, pixels) {
-      return this.readPixels(x, y, width, height, format, type, pixels);
+    [dartx.readPixels](...args) {
+      return this.readPixels.apply(this, args);
     }
-    [dartx.renderbufferStorage](target, internalformat, width, height) {
-      return this.renderbufferStorage(target, internalformat, width, height);
+    [dartx.renderbufferStorage](...args) {
+      return this.renderbufferStorage.apply(this, args);
     }
-    [dartx.sampleCoverage](value, invert) {
-      return this.sampleCoverage(value, invert);
+    [dartx.sampleCoverage](...args) {
+      return this.sampleCoverage.apply(this, args);
     }
-    [dartx.scissor](x, y, width, height) {
-      return this.scissor(x, y, width, height);
+    [dartx.scissor](...args) {
+      return this.scissor.apply(this, args);
     }
-    [dartx.shaderSource](shader, string) {
-      return this.shaderSource(shader, string);
+    [dartx.shaderSource](...args) {
+      return this.shaderSource.apply(this, args);
     }
-    [dartx.stencilFunc](func, ref, mask) {
-      return this.stencilFunc(func, ref, mask);
+    [dartx.stencilFunc](...args) {
+      return this.stencilFunc.apply(this, args);
     }
-    [dartx.stencilFuncSeparate](face, func, ref, mask) {
-      return this.stencilFuncSeparate(face, func, ref, mask);
+    [dartx.stencilFuncSeparate](...args) {
+      return this.stencilFuncSeparate.apply(this, args);
     }
-    [dartx.stencilMask](mask) {
-      return this.stencilMask(mask);
+    [dartx.stencilMask](...args) {
+      return this.stencilMask.apply(this, args);
     }
-    [dartx.stencilMaskSeparate](face, mask) {
-      return this.stencilMaskSeparate(face, mask);
+    [dartx.stencilMaskSeparate](...args) {
+      return this.stencilMaskSeparate.apply(this, args);
     }
-    [dartx.stencilOp](fail, zfail, zpass) {
-      return this.stencilOp(fail, zfail, zpass);
+    [dartx.stencilOp](...args) {
+      return this.stencilOp.apply(this, args);
     }
-    [dartx.stencilOpSeparate](face, fail, zfail, zpass) {
-      return this.stencilOpSeparate(face, fail, zfail, zpass);
+    [dartx.stencilOpSeparate](...args) {
+      return this.stencilOpSeparate.apply(this, args);
     }
     [dartx.texImage2D](target, level, internalformat, format_OR_width, height_OR_type, border_OR_canvas_OR_image_OR_pixels_OR_video, format, type, pixels) {
       if (format === void 0) format = null;
@@ -92642,43 +92642,43 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_texImage2D_1](target, level, internalformat, width, height, border, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+    [_texImage2D_1](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_2](target, level, internalformat, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, format, type, pixels);
+    [_texImage2D_2](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_3](target, level, internalformat, format, type, image) {
-      return this.texImage2D(target, level, internalformat, format, type, image);
+    [_texImage2D_3](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_4](target, level, internalformat, format, type, canvas) {
-      return this.texImage2D(target, level, internalformat, format, type, canvas);
+    [_texImage2D_4](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_5](target, level, internalformat, format, type, video) {
-      return this.texImage2D(target, level, internalformat, format, type, video);
+    [_texImage2D_5](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DCanvas](target, level, internalformat, format, type, canvas) {
-      return this.texImage2D(target, level, internalformat, format, type, canvas);
+    [dartx.texImage2DCanvas](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DImage](target, level, internalformat, format, type, image) {
-      return this.texImage2D(target, level, internalformat, format, type, image);
+    [dartx.texImage2DImage](...args) {
+      return this.texImage2D.apply(this, args);
     }
     [dartx.texImage2DImageData](target, level, internalformat, format, type, pixels) {
       let pixels_1 = html_common.convertDartToNative_ImageData(pixels);
       this[_texImage2DImageData_1](target, level, internalformat, format, type, pixels_1);
       return;
     }
-    [_texImage2DImageData_1](target, level, internalformat, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, format, type, pixels);
+    [_texImage2DImageData_1](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DVideo](target, level, internalformat, format, type, video) {
-      return this.texImage2D(target, level, internalformat, format, type, video);
+    [dartx.texImage2DVideo](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texParameterf](target, pname, param) {
-      return this.texParameterf(target, pname, param);
+    [dartx.texParameterf](...args) {
+      return this.texParameterf.apply(this, args);
     }
-    [dartx.texParameteri](target, pname, param) {
-      return this.texParameteri(target, pname, param);
+    [dartx.texParameteri](...args) {
+      return this.texParameteri.apply(this, args);
     }
     [dartx.texSubImage2D](target, level, xoffset, yoffset, format_OR_width, height_OR_type, canvas_OR_format_OR_image_OR_pixels_OR_video, type, pixels) {
       if (type === void 0) type = null;
@@ -92706,142 +92706,142 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_texSubImage2D_1](target, level, xoffset, yoffset, width, height, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+    [_texSubImage2D_1](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_2](target, level, xoffset, yoffset, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, pixels);
+    [_texSubImage2D_2](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_3](target, level, xoffset, yoffset, format, type, image) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, image);
+    [_texSubImage2D_3](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_4](target, level, xoffset, yoffset, format, type, canvas) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, canvas);
+    [_texSubImage2D_4](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_5](target, level, xoffset, yoffset, format, type, video) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, video);
+    [_texSubImage2D_5](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DCanvas](target, level, xoffset, yoffset, format, type, canvas) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, canvas);
+    [dartx.texSubImage2DCanvas](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DImage](target, level, xoffset, yoffset, format, type, image) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, image);
+    [dartx.texSubImage2DImage](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
     [dartx.texSubImage2DImageData](target, level, xoffset, yoffset, format, type, pixels) {
       let pixels_1 = html_common.convertDartToNative_ImageData(pixels);
       this[_texSubImage2DImageData_1](target, level, xoffset, yoffset, format, type, pixels_1);
       return;
     }
-    [_texSubImage2DImageData_1](target, level, xoffset, yoffset, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, pixels);
+    [_texSubImage2DImageData_1](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DVideo](target, level, xoffset, yoffset, format, type, video) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, video);
+    [dartx.texSubImage2DVideo](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.uniform1f](location, x) {
-      return this.uniform1f(location, x);
+    [dartx.uniform1f](...args) {
+      return this.uniform1f.apply(this, args);
     }
-    [dartx.uniform1fv](location, v) {
-      return this.uniform1fv(location, v);
+    [dartx.uniform1fv](...args) {
+      return this.uniform1fv.apply(this, args);
     }
-    [dartx.uniform1i](location, x) {
-      return this.uniform1i(location, x);
+    [dartx.uniform1i](...args) {
+      return this.uniform1i.apply(this, args);
     }
-    [dartx.uniform1iv](location, v) {
-      return this.uniform1iv(location, v);
+    [dartx.uniform1iv](...args) {
+      return this.uniform1iv.apply(this, args);
     }
-    [dartx.uniform2f](location, x, y) {
-      return this.uniform2f(location, x, y);
+    [dartx.uniform2f](...args) {
+      return this.uniform2f.apply(this, args);
     }
-    [dartx.uniform2fv](location, v) {
-      return this.uniform2fv(location, v);
+    [dartx.uniform2fv](...args) {
+      return this.uniform2fv.apply(this, args);
     }
-    [dartx.uniform2i](location, x, y) {
-      return this.uniform2i(location, x, y);
+    [dartx.uniform2i](...args) {
+      return this.uniform2i.apply(this, args);
     }
-    [dartx.uniform2iv](location, v) {
-      return this.uniform2iv(location, v);
+    [dartx.uniform2iv](...args) {
+      return this.uniform2iv.apply(this, args);
     }
-    [dartx.uniform3f](location, x, y, z) {
-      return this.uniform3f(location, x, y, z);
+    [dartx.uniform3f](...args) {
+      return this.uniform3f.apply(this, args);
     }
-    [dartx.uniform3fv](location, v) {
-      return this.uniform3fv(location, v);
+    [dartx.uniform3fv](...args) {
+      return this.uniform3fv.apply(this, args);
     }
-    [dartx.uniform3i](location, x, y, z) {
-      return this.uniform3i(location, x, y, z);
+    [dartx.uniform3i](...args) {
+      return this.uniform3i.apply(this, args);
     }
-    [dartx.uniform3iv](location, v) {
-      return this.uniform3iv(location, v);
+    [dartx.uniform3iv](...args) {
+      return this.uniform3iv.apply(this, args);
     }
-    [dartx.uniform4f](location, x, y, z, w) {
-      return this.uniform4f(location, x, y, z, w);
+    [dartx.uniform4f](...args) {
+      return this.uniform4f.apply(this, args);
     }
-    [dartx.uniform4fv](location, v) {
-      return this.uniform4fv(location, v);
+    [dartx.uniform4fv](...args) {
+      return this.uniform4fv.apply(this, args);
     }
-    [dartx.uniform4i](location, x, y, z, w) {
-      return this.uniform4i(location, x, y, z, w);
+    [dartx.uniform4i](...args) {
+      return this.uniform4i.apply(this, args);
     }
-    [dartx.uniform4iv](location, v) {
-      return this.uniform4iv(location, v);
+    [dartx.uniform4iv](...args) {
+      return this.uniform4iv.apply(this, args);
     }
-    [dartx.uniformMatrix2fv](location, transpose, array) {
-      return this.uniformMatrix2fv(location, transpose, array);
+    [dartx.uniformMatrix2fv](...args) {
+      return this.uniformMatrix2fv.apply(this, args);
     }
-    [dartx.uniformMatrix3fv](location, transpose, array) {
-      return this.uniformMatrix3fv(location, transpose, array);
+    [dartx.uniformMatrix3fv](...args) {
+      return this.uniformMatrix3fv.apply(this, args);
     }
-    [dartx.uniformMatrix4fv](location, transpose, array) {
-      return this.uniformMatrix4fv(location, transpose, array);
+    [dartx.uniformMatrix4fv](...args) {
+      return this.uniformMatrix4fv.apply(this, args);
     }
-    [dartx.useProgram](program) {
-      return this.useProgram(program);
+    [dartx.useProgram](...args) {
+      return this.useProgram.apply(this, args);
     }
-    [dartx.validateProgram](program) {
-      return this.validateProgram(program);
+    [dartx.validateProgram](...args) {
+      return this.validateProgram.apply(this, args);
     }
-    [dartx.vertexAttrib1f](indx, x) {
-      return this.vertexAttrib1f(indx, x);
+    [dartx.vertexAttrib1f](...args) {
+      return this.vertexAttrib1f.apply(this, args);
     }
-    [dartx.vertexAttrib1fv](indx, values) {
-      return this.vertexAttrib1fv(indx, values);
+    [dartx.vertexAttrib1fv](...args) {
+      return this.vertexAttrib1fv.apply(this, args);
     }
-    [dartx.vertexAttrib2f](indx, x, y) {
-      return this.vertexAttrib2f(indx, x, y);
+    [dartx.vertexAttrib2f](...args) {
+      return this.vertexAttrib2f.apply(this, args);
     }
-    [dartx.vertexAttrib2fv](indx, values) {
-      return this.vertexAttrib2fv(indx, values);
+    [dartx.vertexAttrib2fv](...args) {
+      return this.vertexAttrib2fv.apply(this, args);
     }
-    [dartx.vertexAttrib3f](indx, x, y, z) {
-      return this.vertexAttrib3f(indx, x, y, z);
+    [dartx.vertexAttrib3f](...args) {
+      return this.vertexAttrib3f.apply(this, args);
     }
-    [dartx.vertexAttrib3fv](indx, values) {
-      return this.vertexAttrib3fv(indx, values);
+    [dartx.vertexAttrib3fv](...args) {
+      return this.vertexAttrib3fv.apply(this, args);
     }
-    [dartx.vertexAttrib4f](indx, x, y, z, w) {
-      return this.vertexAttrib4f(indx, x, y, z, w);
+    [dartx.vertexAttrib4f](...args) {
+      return this.vertexAttrib4f.apply(this, args);
     }
-    [dartx.vertexAttrib4fv](indx, values) {
-      return this.vertexAttrib4fv(indx, values);
+    [dartx.vertexAttrib4fv](...args) {
+      return this.vertexAttrib4fv.apply(this, args);
     }
-    [dartx.vertexAttribPointer](indx, size, type, normalized, stride, offset) {
-      return this.vertexAttribPointer(indx, size, type, normalized, stride, offset);
+    [dartx.vertexAttribPointer](...args) {
+      return this.vertexAttribPointer.apply(this, args);
     }
-    [dartx.viewport](x, y, width, height) {
-      return this.viewport(x, y, width, height);
+    [dartx.viewport](...args) {
+      return this.viewport.apply(this, args);
     }
-    [dartx.texImage2DUntyped](targetTexture, levelOfDetail, internalFormat, format, type, data) {
-      return this.texImage2D(targetTexture, levelOfDetail, internalFormat, format, type, data);
+    [dartx.texImage2DUntyped](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DTyped](targetTexture, levelOfDetail, internalFormat, width, height, border, format, type, data) {
-      return this.texImage2D(targetTexture, levelOfDetail, internalFormat, width, height, border, format, type, data);
+    [dartx.texImage2DTyped](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DUntyped](targetTexture, levelOfDetail, xOffset, yOffset, format, type, data) {
-      return this.texSubImage2D(targetTexture, levelOfDetail, xOffset, yOffset, format, type, data);
+    [dartx.texSubImage2DUntyped](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DTyped](targetTexture, levelOfDetail, xOffset, yOffset, width, height, border, format, type, data) {
-      return this.texSubImage2D(targetTexture, levelOfDetail, xOffset, yOffset, width, height, border, format, type, data);
+    [dartx.texSubImage2DTyped](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
   };
   web_gl.RenderingContext[dart.implements] = () => [html$.CanvasRenderingContext];
@@ -93962,14 +93962,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.drawArraysInstancedAngle](mode, first, count, primcount) {
-      return this.drawArraysInstancedANGLE(mode, first, count, primcount);
+    [dartx.drawArraysInstancedAngle](...args) {
+      return this.drawArraysInstancedANGLE.apply(this, args);
     }
-    [dartx.drawElementsInstancedAngle](mode, count, type, offset, primcount) {
-      return this.drawElementsInstancedANGLE(mode, count, type, offset, primcount);
+    [dartx.drawElementsInstancedAngle](...args) {
+      return this.drawElementsInstancedANGLE.apply(this, args);
     }
-    [dartx.vertexAttribDivisorAngle](index, divisor) {
-      return this.vertexAttribDivisorANGLE(index, divisor);
+    [dartx.vertexAttribDivisorAngle](...args) {
+      return this.vertexAttribDivisorANGLE.apply(this, args);
     }
   };
   dart.setSignature(web_gl.AngleInstancedArrays, {
@@ -94165,8 +94165,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getTranslatedShaderSource](shader) {
-      return this.getTranslatedShaderSource(shader);
+    [dartx.getTranslatedShaderSource](...args) {
+      return this.getTranslatedShaderSource.apply(this, args);
     }
   };
   dart.setSignature(web_gl.DebugShaders, {
@@ -94192,8 +94192,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.drawBuffersWebgl](buffers) {
-      return this.drawBuffersWEBGL(buffers);
+    [dartx.drawBuffersWebgl](...args) {
+      return this.drawBuffersWEBGL.apply(this, args);
     }
   };
   dart.setSignature(web_gl.DrawBuffers, {
@@ -94336,11 +94336,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.loseContext]() {
-      return this.loseContext();
+    [dartx.loseContext](...args) {
+      return this.loseContext.apply(this, args);
     }
-    [dartx.restoreContext]() {
-      return this.restoreContext();
+    [dartx.restoreContext](...args) {
+      return this.restoreContext.apply(this, args);
     }
   };
   dart.setSignature(web_gl.LoseContext, {
@@ -94409,17 +94409,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.bindVertexArray](arrayObject) {
-      return this.bindVertexArrayOES(arrayObject);
+    [dartx.bindVertexArray](...args) {
+      return this.bindVertexArrayOES.apply(this, args);
     }
-    [dartx.createVertexArray]() {
-      return this.createVertexArrayOES();
+    [dartx.createVertexArray](...args) {
+      return this.createVertexArrayOES.apply(this, args);
     }
-    [dartx.deleteVertexArray](arrayObject) {
-      return this.deleteVertexArrayOES(arrayObject);
+    [dartx.deleteVertexArray](...args) {
+      return this.deleteVertexArrayOES.apply(this, args);
     }
-    [dartx.isVertexArray](arrayObject) {
-      return this.isVertexArrayOES(arrayObject);
+    [dartx.isVertexArray](...args) {
+      return this.isVertexArrayOES.apply(this, args);
     }
   };
   dart.setSignature(web_gl.OesVertexArrayObject, {
@@ -94544,14 +94544,14 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.changeVersion](oldVersion, newVersion, callback, errorCallback, successCallback) {
-      return this.changeVersion(oldVersion, newVersion, callback, errorCallback, successCallback);
+    [dartx.changeVersion](...args) {
+      return this.changeVersion.apply(this, args);
     }
-    [dartx.readTransaction](callback, errorCallback, successCallback) {
-      return this.readTransaction(callback, errorCallback, successCallback);
+    [dartx.readTransaction](...args) {
+      return this.readTransaction.apply(this, args);
     }
-    [dartx.transaction](callback, errorCallback, successCallback) {
-      return this.transaction(callback, errorCallback, successCallback);
+    [dartx.transaction](...args) {
+      return this.transaction.apply(this, args);
     }
   };
   dart.setSignature(web_sql.SqlDatabase, {
@@ -94691,8 +94691,8 @@
     [dartx.item](index) {
       return html_common.convertNativeToDart_Dictionary(this[_item_1](index));
     }
-    [_item_1](index) {
-      return this.item(index);
+    [_item_1](...args) {
+      return this.item.apply(this, args);
     }
   };
   web_sql.SqlResultSetRowList[dart.implements] = () => [ListOfMap()];
@@ -94721,8 +94721,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.executeSql](sqlStatement, arguments$, callback, errorCallback) {
-      return this.executeSql(sqlStatement, arguments$, callback, errorCallback);
+    [dartx.executeSql](...args) {
+      return this.executeSql.apply(this, args);
     }
   };
   dart.setSignature(web_sql.SqlTransaction, {
diff --git a/pkg/dev_compiler/lib/js/es6/dart_sdk.js b/pkg/dev_compiler/lib/js/es6/dart_sdk.js
index cd79fe3..04625a8 100644
--- a/pkg/dev_compiler/lib/js/es6/dart_sdk.js
+++ b/pkg/dev_compiler/lib/js/es6/dart_sdk.js
@@ -15607,113 +15607,113 @@
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_getFloat32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_getFloat32](byteOffset, littleEndian) {
-    return this.getFloat32(byteOffset, littleEndian);
+  [_getFloat32](...args) {
+    return this.getFloat32.apply(this, args);
   }
   [dartx.getFloat64](byteOffset, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_getFloat64](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_getFloat64](byteOffset, littleEndian) {
-    return this.getFloat64(byteOffset, littleEndian);
+  [_getFloat64](...args) {
+    return this.getFloat64.apply(this, args);
   }
   [dartx.getInt16](byteOffset, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_getInt16](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_getInt16](byteOffset, littleEndian) {
-    return this.getInt16(byteOffset, littleEndian);
+  [_getInt16](...args) {
+    return this.getInt16.apply(this, args);
   }
   [dartx.getInt32](byteOffset, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_getInt32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_getInt32](byteOffset, littleEndian) {
-    return this.getInt32(byteOffset, littleEndian);
+  [_getInt32](...args) {
+    return this.getInt32.apply(this, args);
   }
   [dartx.getInt64](byteOffset, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     dart.throw(new core.UnsupportedError('Int64 accessor not supported by dart2js.'));
   }
-  [dartx.getInt8](byteOffset) {
-    return this.getInt8(byteOffset);
+  [dartx.getInt8](...args) {
+    return this.getInt8.apply(this, args);
   }
   [dartx.getUint16](byteOffset, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_getUint16](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_getUint16](byteOffset, littleEndian) {
-    return this.getUint16(byteOffset, littleEndian);
+  [_getUint16](...args) {
+    return this.getUint16.apply(this, args);
   }
   [dartx.getUint32](byteOffset, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_getUint32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_getUint32](byteOffset, littleEndian) {
-    return this.getUint32(byteOffset, littleEndian);
+  [_getUint32](...args) {
+    return this.getUint32.apply(this, args);
   }
   [dartx.getUint64](byteOffset, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     dart.throw(new core.UnsupportedError('Uint64 accessor not supported by dart2js.'));
   }
-  [dartx.getUint8](byteOffset) {
-    return this.getUint8(byteOffset);
+  [dartx.getUint8](...args) {
+    return this.getUint8.apply(this, args);
   }
   [dartx.setFloat32](byteOffset, value, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_setFloat32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_setFloat32](byteOffset, value, littleEndian) {
-    return this.setFloat32(byteOffset, value, littleEndian);
+  [_setFloat32](...args) {
+    return this.setFloat32.apply(this, args);
   }
   [dartx.setFloat64](byteOffset, value, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_setFloat64](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_setFloat64](byteOffset, value, littleEndian) {
-    return this.setFloat64(byteOffset, value, littleEndian);
+  [_setFloat64](...args) {
+    return this.setFloat64.apply(this, args);
   }
   [dartx.setInt16](byteOffset, value, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_setInt16](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_setInt16](byteOffset, value, littleEndian) {
-    return this.setInt16(byteOffset, value, littleEndian);
+  [_setInt16](...args) {
+    return this.setInt16.apply(this, args);
   }
   [dartx.setInt32](byteOffset, value, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_setInt32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_setInt32](byteOffset, value, littleEndian) {
-    return this.setInt32(byteOffset, value, littleEndian);
+  [_setInt32](...args) {
+    return this.setInt32.apply(this, args);
   }
   [dartx.setInt64](byteOffset, value, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     dart.throw(new core.UnsupportedError('Int64 accessor not supported by dart2js.'));
   }
-  [dartx.setInt8](byteOffset, value) {
-    return this.setInt8(byteOffset, value);
+  [dartx.setInt8](...args) {
+    return this.setInt8.apply(this, args);
   }
   [dartx.setUint16](byteOffset, value, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_setUint16](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_setUint16](byteOffset, value, littleEndian) {
-    return this.setUint16(byteOffset, value, littleEndian);
+  [_setUint16](...args) {
+    return this.setUint16.apply(this, args);
   }
   [dartx.setUint32](byteOffset, value, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     return this[_setUint32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
   }
-  [_setUint32](byteOffset, value, littleEndian) {
-    return this.setUint32(byteOffset, value, littleEndian);
+  [_setUint32](...args) {
+    return this.setUint32.apply(this, args);
   }
   [dartx.setUint64](byteOffset, value, endian) {
     if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
     dart.throw(new core.UnsupportedError('Uint64 accessor not supported by dart2js.'));
   }
-  [dartx.setUint8](byteOffset, value) {
-    return this.setUint8(byteOffset, value);
+  [dartx.setUint8](...args) {
+    return this.setUint8.apply(this, args);
   }
   static _create1(arg) {
     return new DataView(new ArrayBuffer(arg));
@@ -38347,21 +38347,21 @@
   get [dartx.source]() {
     return this.source;
   }
-  [dartx.advance](count) {
-    return this.advance(count);
+  [dartx.advance](...args) {
+    return this.advance.apply(this, args);
   }
-  [dartx.continuePrimaryKey](key, primaryKey) {
-    return this.continuePrimaryKey(key, primaryKey);
+  [dartx.continuePrimaryKey](...args) {
+    return this.continuePrimaryKey.apply(this, args);
   }
-  [_delete]() {
-    return this.delete();
+  [_delete](...args) {
+    return this.delete.apply(this, args);
   }
   [_update](value) {
     let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
     return this[_update_1](value_1);
   }
-  [_update_1](value) {
-    return this.update(value);
+  [_update_1](...args) {
+    return this.update.apply(this, args);
   }
 };
 dart.setSignature(indexed_db.Cursor, {
@@ -38439,14 +38439,14 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [_addEventListener](type, listener, capture) {
-    return this.addEventListener(type, listener, capture);
+  [_addEventListener](...args) {
+    return this.addEventListener.apply(this, args);
   }
-  [dartx.dispatchEvent](event) {
-    return this.dispatchEvent(event);
+  [dartx.dispatchEvent](...args) {
+    return this.dispatchEvent.apply(this, args);
   }
-  [_removeEventListener](type, listener, capture) {
-    return this.removeEventListener(type, listener, capture);
+  [_removeEventListener](...args) {
+    return this.removeEventListener.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.EventTarget, '_created');
@@ -38519,8 +38519,8 @@
     }
     return this[_transaction](storeNames, mode);
   }
-  [_transaction](stores, mode) {
-    return this.transaction(stores, mode);
+  [_transaction](...args) {
+    return this.transaction.apply(this, args);
   }
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
@@ -38534,8 +38534,8 @@
   get [dartx.version]() {
     return this.version;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
   [_createObjectStore](name, options) {
     if (options === void 0) options = null;
@@ -38545,14 +38545,14 @@
     }
     return this[_createObjectStore_2](name);
   }
-  [_createObjectStore_1](name, options) {
-    return this.createObjectStore(name, options);
+  [_createObjectStore_1](...args) {
+    return this.createObjectStore.apply(this, args);
   }
-  [_createObjectStore_2](name) {
-    return this.createObjectStore(name);
+  [_createObjectStore_2](...args) {
+    return this.createObjectStore.apply(this, args);
   }
-  [dartx.deleteObjectStore](name) {
-    return this.deleteObjectStore(name);
+  [dartx.deleteObjectStore](...args) {
+    return this.deleteObjectStore.apply(this, args);
   }
   get [dartx.onAbort]() {
     return indexed_db.Database.abortEvent.forTarget(this);
@@ -38691,17 +38691,17 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.cmp](first, second) {
-    return this.cmp(first, second);
+  [dartx.cmp](...args) {
+    return this.cmp.apply(this, args);
   }
-  [_deleteDatabase](name) {
-    return this.deleteDatabase(name);
+  [_deleteDatabase](...args) {
+    return this.deleteDatabase.apply(this, args);
   }
-  [_open](name, version) {
-    return this.open(name, version);
+  [_open](...args) {
+    return this.open.apply(this, args);
   }
-  [_webkitGetDatabaseNames]() {
-    return this.webkitGetDatabaseNames();
+  [_webkitGetDatabaseNames](...args) {
+    return this.webkitGetDatabaseNames.apply(this, args);
   }
 };
 dart.setSignature(indexed_db.IdbFactory, {
@@ -38844,26 +38844,26 @@
   get [dartx.unique]() {
     return this.unique;
   }
-  [_count](key) {
-    return this.count(key);
+  [_count](...args) {
+    return this.count.apply(this, args);
   }
-  [_get](key) {
-    return this.get(key);
+  [_get](...args) {
+    return this.get.apply(this, args);
   }
-  [dartx.getAll](range, maxCount) {
-    return this.getAll(range, maxCount);
+  [dartx.getAll](...args) {
+    return this.getAll.apply(this, args);
   }
-  [dartx.getAllKeys](range, maxCount) {
-    return this.getAllKeys(range, maxCount);
+  [dartx.getAllKeys](...args) {
+    return this.getAllKeys.apply(this, args);
   }
-  [_getKey](key) {
-    return this.getKey(key);
+  [_getKey](...args) {
+    return this.getKey.apply(this, args);
   }
-  [_openCursor](range, direction) {
-    return this.openCursor(range, direction);
+  [_openCursor](...args) {
+    return this.openCursor.apply(this, args);
   }
-  [_openKeyCursor](range, direction) {
-    return this.openKeyCursor(range, direction);
+  [_openKeyCursor](...args) {
+    return this.openKeyCursor.apply(this, args);
   }
 };
 dart.setSignature(indexed_db.Index, {
@@ -39117,17 +39117,17 @@
     let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
     return this[_add_2](value_1);
   }
-  [_add_1](value, key) {
-    return this.add(value, key);
+  [_add_1](...args) {
+    return this.add.apply(this, args);
   }
-  [_add_2](value) {
-    return this.add(value);
+  [_add_2](...args) {
+    return this.add.apply(this, args);
   }
-  [_clear]() {
-    return this.clear();
+  [_clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [_count](key) {
-    return this.count(key);
+  [_count](...args) {
+    return this.count.apply(this, args);
   }
   [_createIndex](name, keyPath, options) {
     if (options === void 0) options = null;
@@ -39137,35 +39137,35 @@
     }
     return this[_createIndex_2](name, keyPath);
   }
-  [_createIndex_1](name, keyPath, options) {
-    return this.createIndex(name, keyPath, options);
+  [_createIndex_1](...args) {
+    return this.createIndex.apply(this, args);
   }
-  [_createIndex_2](name, keyPath) {
-    return this.createIndex(name, keyPath);
+  [_createIndex_2](...args) {
+    return this.createIndex.apply(this, args);
   }
-  [_delete](key) {
-    return this.delete(key);
+  [_delete](...args) {
+    return this.delete.apply(this, args);
   }
-  [dartx.deleteIndex](name) {
-    return this.deleteIndex(name);
+  [dartx.deleteIndex](...args) {
+    return this.deleteIndex.apply(this, args);
   }
-  [_get](key) {
-    return this.get(key);
+  [_get](...args) {
+    return this.get.apply(this, args);
   }
-  [dartx.getAll](range, maxCount) {
-    return this.getAll(range, maxCount);
+  [dartx.getAll](...args) {
+    return this.getAll.apply(this, args);
   }
-  [dartx.getAllKeys](range, maxCount) {
-    return this.getAllKeys(range, maxCount);
+  [dartx.getAllKeys](...args) {
+    return this.getAllKeys.apply(this, args);
   }
-  [dartx.index](name) {
-    return this.index(name);
+  [dartx.index](...args) {
+    return this.index.apply(this, args);
   }
-  [_openCursor](range, direction) {
-    return this.openCursor(range, direction);
+  [_openCursor](...args) {
+    return this.openCursor.apply(this, args);
   }
-  [dartx.openKeyCursor](range, direction) {
-    return this.openKeyCursor(range, direction);
+  [dartx.openKeyCursor](...args) {
+    return this.openKeyCursor.apply(this, args);
   }
   [_put](value, key) {
     if (key === void 0) key = null;
@@ -39177,11 +39177,11 @@
     let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
     return this[_put_2](value_1);
   }
-  [_put_1](value, key) {
-    return this.put(value, key);
+  [_put_1](...args) {
+    return this.put.apply(this, args);
   }
-  [_put_2](value) {
-    return this.put(value);
+  [_put_2](...args) {
+    return this.put.apply(this, args);
   }
   static _cursorStreamFromResult(T) {
     return (request, autoAdvance) => {
@@ -39396,11 +39396,11 @@
   get [dartx.objectStoreNames]() {
     return this.objectStoreNames;
   }
-  [dartx.abort]() {
-    return this.abort();
+  [dartx.abort](...args) {
+    return this.abort.apply(this, args);
   }
-  [dartx.objectStore](name) {
-    return this.objectStore(name);
+  [dartx.objectStore](...args) {
+    return this.objectStore.apply(this, args);
   }
   get [dartx.onAbort]() {
     return indexed_db.Transaction.abortEvent.forTarget(this);
@@ -39547,17 +39547,17 @@
   get [dartx.type]() {
     return this.type;
   }
-  [_initEvent](type, bubbles, cancelable) {
-    return this.initEvent(type, bubbles, cancelable);
+  [_initEvent](...args) {
+    return this.initEvent.apply(this, args);
   }
-  [dartx.preventDefault]() {
-    return this.preventDefault();
+  [dartx.preventDefault](...args) {
+    return this.preventDefault.apply(this, args);
   }
-  [dartx.stopImmediatePropagation]() {
-    return this.stopImmediatePropagation();
+  [dartx.stopImmediatePropagation](...args) {
+    return this.stopImmediatePropagation.apply(this, args);
   }
-  [dartx.stopPropagation]() {
-    return this.stopPropagation();
+  [dartx.stopPropagation](...args) {
+    return this.stopPropagation.apply(this, args);
   }
 };
 dart.setSignature(html.Event, {
@@ -39858,26 +39858,26 @@
   set [dartx.text](value) {
     this.textContent = value;
   }
-  [dartx.append](node) {
-    return this.appendChild(node);
+  [dartx.append](...args) {
+    return this.appendChild.apply(this, args);
   }
-  [dartx.clone](deep) {
-    return this.cloneNode(deep);
+  [dartx.clone](...args) {
+    return this.cloneNode.apply(this, args);
   }
-  [dartx.contains](other) {
-    return this.contains(other);
+  [dartx.contains](...args) {
+    return this.contains.apply(this, args);
   }
-  [dartx.hasChildNodes]() {
-    return this.hasChildNodes();
+  [dartx.hasChildNodes](...args) {
+    return this.hasChildNodes.apply(this, args);
   }
-  [dartx.insertBefore](node, child) {
-    return this.insertBefore(node, child);
+  [dartx.insertBefore](...args) {
+    return this.insertBefore.apply(this, args);
   }
-  [_removeChild](child) {
-    return this.removeChild(child);
+  [_removeChild](...args) {
+    return this.removeChild.apply(this, args);
   }
-  [_replaceChild](node, child) {
-    return this.replaceChild(node, child);
+  [_replaceChild](...args) {
+    return this.replaceChild.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.Node, '_created');
@@ -40357,8 +40357,8 @@
     let convertedTiming = core.Map.is(timing) ? html_common.convertDartToNative_Dictionary(timing) : timing;
     return convertedTiming == null ? this[_animate](convertedFrames) : this[_animate](convertedFrames, convertedTiming);
   }
-  [_animate](effect, timing) {
-    return this.animate(effect, timing);
+  [_animate](...args) {
+    return this.animate.apply(this, args);
   }
   [dartx.attributeChanged](name, oldValue, newValue) {}
   get [_xtag]() {
@@ -40418,8 +40418,8 @@
       this[_insertAdjacentNode](where, html.Text.new(text));
     }
   }
-  [_insertAdjacentText](where, text) {
-    return this.insertAdjacentText(where, text);
+  [_insertAdjacentText](...args) {
+    return this.insertAdjacentText.apply(this, args);
   }
   [dartx.insertAdjacentHtml](where, html, opts) {
     let validator = opts && 'validator' in opts ? opts.validator : null;
@@ -40430,8 +40430,8 @@
       this[_insertAdjacentNode](where, this[dartx.createFragment](html, {validator: validator, treeSanitizer: treeSanitizer}));
     }
   }
-  [_insertAdjacentHtml](where, text) {
-    return this.insertAdjacentHTML(where, text);
+  [_insertAdjacentHtml](...args) {
+    return this.insertAdjacentHTML.apply(this, args);
   }
   [dartx.insertAdjacentElement](where, element) {
     if (!!this.insertAdjacentElement) {
@@ -40441,8 +40441,8 @@
     }
     return element;
   }
-  [_insertAdjacentElement](where, element) {
-    return this.insertAdjacentElement(where, element);
+  [_insertAdjacentElement](...args) {
+    return this.insertAdjacentElement.apply(this, args);
   }
   [_insertAdjacentNode](where, node) {
     switch (where[dartx.toLowerCase]()) {
@@ -40756,14 +40756,14 @@
   set [dartx.dropzone](value) {
     this.webkitdropzone = value;
   }
-  [dartx.blur]() {
-    return this.blur();
+  [dartx.blur](...args) {
+    return this.blur.apply(this, args);
   }
-  [dartx.click]() {
-    return this.click();
+  [dartx.click](...args) {
+    return this.click.apply(this, args);
   }
-  [dartx.focus]() {
-    return this.focus();
+  [dartx.focus](...args) {
+    return this.focus.apply(this, args);
   }
   get [_attributes]() {
     return this.attributes;
@@ -40828,50 +40828,50 @@
   get [dartx.tagName]() {
     return this.tagName;
   }
-  [dartx.closest](selectors) {
-    return this.closest(selectors);
+  [dartx.closest](...args) {
+    return this.closest.apply(this, args);
   }
-  [dartx.getAnimations]() {
-    return this.getAnimations();
+  [dartx.getAnimations](...args) {
+    return this.getAnimations.apply(this, args);
   }
-  [dartx.getAttribute](name) {
-    return this.getAttribute(name);
+  [dartx.getAttribute](...args) {
+    return this.getAttribute.apply(this, args);
   }
-  [dartx.getAttributeNS](namespaceURI, localName) {
-    return this.getAttributeNS(namespaceURI, localName);
+  [dartx.getAttributeNS](...args) {
+    return this.getAttributeNS.apply(this, args);
   }
-  [dartx.getBoundingClientRect]() {
-    return this.getBoundingClientRect();
+  [dartx.getBoundingClientRect](...args) {
+    return this.getBoundingClientRect.apply(this, args);
   }
-  [dartx.getClientRects]() {
-    return this.getClientRects();
+  [dartx.getClientRects](...args) {
+    return this.getClientRects.apply(this, args);
   }
-  [dartx.getDestinationInsertionPoints]() {
-    return this.getDestinationInsertionPoints();
+  [dartx.getDestinationInsertionPoints](...args) {
+    return this.getDestinationInsertionPoints.apply(this, args);
   }
-  [dartx.getElementsByClassName](classNames) {
-    return this.getElementsByClassName(classNames);
+  [dartx.getElementsByClassName](...args) {
+    return this.getElementsByClassName.apply(this, args);
   }
-  [_getElementsByTagName](localName) {
-    return this.getElementsByTagName(localName);
+  [_getElementsByTagName](...args) {
+    return this.getElementsByTagName.apply(this, args);
   }
-  [_hasAttribute](name) {
-    return this.hasAttribute(name);
+  [_hasAttribute](...args) {
+    return this.hasAttribute.apply(this, args);
   }
-  [_hasAttributeNS](namespaceURI, localName) {
-    return this.hasAttributeNS(namespaceURI, localName);
+  [_hasAttributeNS](...args) {
+    return this.hasAttributeNS.apply(this, args);
   }
-  [_removeAttribute](name) {
-    return this.removeAttribute(name);
+  [_removeAttribute](...args) {
+    return this.removeAttribute.apply(this, args);
   }
-  [_removeAttributeNS](namespaceURI, localName) {
-    return this.removeAttributeNS(namespaceURI, localName);
+  [_removeAttributeNS](...args) {
+    return this.removeAttributeNS.apply(this, args);
   }
-  [dartx.requestFullscreen]() {
-    return this.requestFullscreen();
+  [dartx.requestFullscreen](...args) {
+    return this.requestFullscreen.apply(this, args);
   }
-  [dartx.requestPointerLock]() {
-    return this.requestPointerLock();
+  [dartx.requestPointerLock](...args) {
+    return this.requestPointerLock.apply(this, args);
   }
   [dartx.scroll](options_OR_x, y) {
     if (options_OR_x === void 0) options_OR_x = null;
@@ -40891,14 +40891,14 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_scroll_1]() {
-    return this.scroll();
+  [_scroll_1](...args) {
+    return this.scroll.apply(this, args);
   }
-  [_scroll_2](options) {
-    return this.scroll(options);
+  [_scroll_2](...args) {
+    return this.scroll.apply(this, args);
   }
-  [_scroll_3](x, y) {
-    return this.scroll(x, y);
+  [_scroll_3](...args) {
+    return this.scroll.apply(this, args);
   }
   [dartx.scrollBy](options_OR_x, y) {
     if (options_OR_x === void 0) options_OR_x = null;
@@ -40918,20 +40918,20 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_scrollBy_1]() {
-    return this.scrollBy();
+  [_scrollBy_1](...args) {
+    return this.scrollBy.apply(this, args);
   }
-  [_scrollBy_2](options) {
-    return this.scrollBy(options);
+  [_scrollBy_2](...args) {
+    return this.scrollBy.apply(this, args);
   }
-  [_scrollBy_3](x, y) {
-    return this.scrollBy(x, y);
+  [_scrollBy_3](...args) {
+    return this.scrollBy.apply(this, args);
   }
-  [_scrollIntoView](alignWithTop) {
-    return this.scrollIntoView(alignWithTop);
+  [_scrollIntoView](...args) {
+    return this.scrollIntoView.apply(this, args);
   }
-  [_scrollIntoViewIfNeeded](centerIfNeeded) {
-    return this.scrollIntoViewIfNeeded(centerIfNeeded);
+  [_scrollIntoViewIfNeeded](...args) {
+    return this.scrollIntoViewIfNeeded.apply(this, args);
   }
   [dartx.scrollTo](options_OR_x, y) {
     if (options_OR_x === void 0) options_OR_x = null;
@@ -40951,26 +40951,26 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_scrollTo_1]() {
-    return this.scrollTo();
+  [_scrollTo_1](...args) {
+    return this.scrollTo.apply(this, args);
   }
-  [_scrollTo_2](options) {
-    return this.scrollTo(options);
+  [_scrollTo_2](...args) {
+    return this.scrollTo.apply(this, args);
   }
-  [_scrollTo_3](x, y) {
-    return this.scrollTo(x, y);
+  [_scrollTo_3](...args) {
+    return this.scrollTo.apply(this, args);
   }
-  [dartx.setAttribute](name, value) {
-    return this.setAttribute(name, value);
+  [dartx.setAttribute](...args) {
+    return this.setAttribute.apply(this, args);
   }
-  [dartx.setAttributeNS](namespaceURI, name, value) {
-    return this.setAttributeNS(namespaceURI, name, value);
+  [dartx.setAttributeNS](...args) {
+    return this.setAttributeNS.apply(this, args);
   }
-  [dartx.after](nodes) {
-    return this.after(nodes);
+  [dartx.after](...args) {
+    return this.after.apply(this, args);
   }
-  [dartx.before](nodes) {
-    return this.before(nodes);
+  [dartx.before](...args) {
+    return this.before.apply(this, args);
   }
   get [dartx.nextElementSibling]() {
     return this.nextElementSibling;
@@ -40990,11 +40990,11 @@
   get [_lastElementChild]() {
     return this.lastElementChild;
   }
-  [dartx.querySelector](selectors) {
-    return this.querySelector(selectors);
+  [dartx.querySelector](...args) {
+    return this.querySelector.apply(this, args);
   }
-  [_querySelectorAll](selectors) {
-    return this.querySelectorAll(selectors);
+  [_querySelectorAll](...args) {
+    return this.querySelectorAll.apply(this, args);
   }
   get [dartx.onAbort]() {
     return html.Element.abortEvent.forElement(this);
@@ -42050,20 +42050,20 @@
   set [dartx.startTime](value) {
     this.startTime = value;
   }
-  [dartx.cancel]() {
-    return this.cancel();
+  [dartx.cancel](...args) {
+    return this.cancel.apply(this, args);
   }
-  [dartx.finish]() {
-    return this.finish();
+  [dartx.finish](...args) {
+    return this.finish.apply(this, args);
   }
-  [dartx.pause]() {
-    return this.pause();
+  [dartx.pause](...args) {
+    return this.pause.apply(this, args);
   }
-  [dartx.play]() {
-    return this.play();
+  [dartx.play](...args) {
+    return this.play.apply(this, args);
   }
-  [dartx.reverse]() {
-    return this.reverse();
+  [dartx.reverse](...args) {
+    return this.reverse.apply(this, args);
   }
 };
 dart.setSignature(html.Animation, {
@@ -42314,11 +42314,11 @@
   set [dartx.playbackRate](value) {
     this.playbackRate = value;
   }
-  [dartx.getAnimations]() {
-    return this.getAnimations();
+  [dartx.getAnimations](...args) {
+    return this.getAnimations.apply(this, args);
   }
-  [dartx.play](source) {
-    return this.play(source);
+  [dartx.play](...args) {
+    return this.play.apply(this, args);
   }
 };
 dart.setSignature(html.AnimationTimeline, {
@@ -42380,14 +42380,14 @@
   get [dartx.status]() {
     return this.status;
   }
-  [dartx.abort]() {
-    return this.abort();
+  [dartx.abort](...args) {
+    return this.abort.apply(this, args);
   }
-  [dartx.swapCache]() {
-    return this.swapCache();
+  [dartx.swapCache](...args) {
+    return this.swapCache.apply(this, args);
   }
-  [dartx.update]() {
-    return this.update();
+  [dartx.update](...args) {
+    return this.update.apply(this, args);
   }
   get [dartx.onCached]() {
     return html.ApplicationCache.cachedEvent.forTarget(this);
@@ -42934,35 +42934,35 @@
   get [dartx.videoDecodedByteCount]() {
     return this.webkitVideoDecodedByteCount;
   }
-  [dartx.addTextTrack](kind, label, language) {
-    return this.addTextTrack(kind, label, language);
+  [dartx.addTextTrack](...args) {
+    return this.addTextTrack.apply(this, args);
   }
-  [dartx.canPlayType](type, keySystem) {
-    return this.canPlayType(type, keySystem);
+  [dartx.canPlayType](...args) {
+    return this.canPlayType.apply(this, args);
   }
-  [dartx.load]() {
-    return this.load();
+  [dartx.load](...args) {
+    return this.load.apply(this, args);
   }
-  [dartx.pause]() {
-    return this.pause();
+  [dartx.pause](...args) {
+    return this.pause.apply(this, args);
   }
-  [dartx.play]() {
-    return this.play();
+  [dartx.play](...args) {
+    return this.play.apply(this, args);
   }
-  [dartx.setMediaKeys](mediaKeys) {
-    return this.setMediaKeys(mediaKeys);
+  [dartx.setMediaKeys](...args) {
+    return this.setMediaKeys.apply(this, args);
   }
-  [dartx.setSinkId](sinkId) {
-    return this.setSinkId(sinkId);
+  [dartx.setSinkId](...args) {
+    return this.setSinkId.apply(this, args);
   }
-  [dartx.addKey](keySystem, key, initData, sessionId) {
-    return this.webkitAddKey(keySystem, key, initData, sessionId);
+  [dartx.addKey](...args) {
+    return this.webkitAddKey.apply(this, args);
   }
-  [dartx.cancelKeyRequest](keySystem, sessionId) {
-    return this.webkitCancelKeyRequest(keySystem, sessionId);
+  [dartx.cancelKeyRequest](...args) {
+    return this.webkitCancelKeyRequest.apply(this, args);
   }
-  [dartx.generateKeyRequest](keySystem, initData) {
-    return this.webkitGenerateKeyRequest(keySystem, initData);
+  [dartx.generateKeyRequest](...args) {
+    return this.webkitGenerateKeyRequest.apply(this, args);
   }
   get [dartx.onKeyAdded]() {
     return html.MediaElement.keyAddedEvent.forElement(this);
@@ -43166,11 +43166,11 @@
   get [dartx.length]() {
     return this.length;
   }
-  [__getter__](index) {
-    return this.__getter__(index);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [dartx.getTrackById](id) {
-    return this.getTrackById(id);
+  [dartx.getTrackById](...args) {
+    return this.getTrackById.apply(this, args);
   }
   get [dartx.onChange]() {
     return html.AudioTrackList.changeEvent.forTarget(this);
@@ -43370,8 +43370,8 @@
   get [dartx.userChoice]() {
     return this.userChoice;
   }
-  [dartx.prompt]() {
-    return this.prompt();
+  [dartx.prompt](...args) {
+    return this.prompt.apply(this, args);
   }
 };
 dart.setSignature(html.BeforeInstallPromptEvent, {
@@ -43426,11 +43426,11 @@
   get [dartx.type]() {
     return this.type;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
-  [dartx.slice](start, end, contentType) {
-    return this.slice(start, end, contentType);
+  [dartx.slice](...args) {
+    return this.slice.apply(this, args);
   }
   static new(blobParts, type, endings) {
     if (type === void 0) type = null;
@@ -43490,8 +43490,8 @@
     let options_1 = html_common.convertDartToNative_Dictionary(options);
     return this[_requestDevice_1](options_1);
   }
-  [_requestDevice_1](options) {
-    return this.requestDevice(options);
+  [_requestDevice_1](...args) {
+    return this.requestDevice.apply(this, args);
   }
 };
 dart.setSignature(html.Bluetooth, {
@@ -43541,8 +43541,8 @@
   get [dartx.vendorIDSource]() {
     return this.vendorIDSource;
   }
-  [dartx.connectGatt]() {
-    return this.connectGATT();
+  [dartx.connectGatt](...args) {
+    return this.connectGATT.apply(this, args);
   }
 };
 dart.setSignature(html.BluetoothDevice, {
@@ -43572,11 +43572,11 @@
   get [dartx.uuid]() {
     return this.uuid;
   }
-  [dartx.readValue]() {
-    return this.readValue();
+  [dartx.readValue](...args) {
+    return this.readValue.apply(this, args);
   }
-  [dartx.writeValue](value) {
-    return this.writeValue(value);
+  [dartx.writeValue](...args) {
+    return this.writeValue.apply(this, args);
   }
 };
 dart.setSignature(html.BluetoothGattCharacteristic, {
@@ -43599,8 +43599,8 @@
   get [dartx.connected]() {
     return this.connected;
   }
-  [dartx.getPrimaryService](service) {
-    return this.getPrimaryService(service);
+  [dartx.getPrimaryService](...args) {
+    return this.getPrimaryService.apply(this, args);
   }
 };
 dart.setSignature(html.BluetoothGattRemoteServer, {
@@ -43624,8 +43624,8 @@
   get [dartx.uuid]() {
     return this.uuid;
   }
-  [dartx.getCharacteristic](characteristic) {
-    return this.getCharacteristic(characteristic);
+  [dartx.getCharacteristic](...args) {
+    return this.getCharacteristic.apply(this, args);
   }
 };
 dart.setSignature(html.BluetoothGattService, {
@@ -43667,17 +43667,17 @@
   get [dartx.bodyUsed]() {
     return this.bodyUsed;
   }
-  [dartx.arrayBuffer]() {
-    return this.arrayBuffer();
+  [dartx.arrayBuffer](...args) {
+    return this.arrayBuffer.apply(this, args);
   }
-  [dartx.blob]() {
-    return this.blob();
+  [dartx.blob](...args) {
+    return this.blob.apply(this, args);
   }
-  [dartx.json]() {
-    return this.json();
+  [dartx.json](...args) {
+    return this.json.apply(this, args);
   }
-  [dartx.text]() {
-    return this.text();
+  [dartx.text](...args) {
+    return this.text.apply(this, args);
   }
 };
 dart.setSignature(html.Body, {
@@ -43951,14 +43951,14 @@
   get [dartx.willValidate]() {
     return this.willValidate;
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
-  [dartx.setCustomValidity](error) {
-    return this.setCustomValidity(error);
+  [dartx.setCustomValidity](...args) {
+    return this.setCustomValidity.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.ButtonElement, 'created');
@@ -44019,26 +44019,26 @@
   get [dartx.length]() {
     return this.length;
   }
-  [dartx.appendData](data) {
-    return this.appendData(data);
+  [dartx.appendData](...args) {
+    return this.appendData.apply(this, args);
   }
-  [dartx.deleteData](offset, count) {
-    return this.deleteData(offset, count);
+  [dartx.deleteData](...args) {
+    return this.deleteData.apply(this, args);
   }
-  [dartx.insertData](offset, data) {
-    return this.insertData(offset, data);
+  [dartx.insertData](...args) {
+    return this.insertData.apply(this, args);
   }
-  [dartx.replaceData](offset, count, data) {
-    return this.replaceData(offset, count, data);
+  [dartx.replaceData](...args) {
+    return this.replaceData.apply(this, args);
   }
-  [dartx.substringData](offset, count) {
-    return this.substringData(offset, count);
+  [dartx.substringData](...args) {
+    return this.substringData.apply(this, args);
   }
-  [dartx.after](nodes) {
-    return this.after(nodes);
+  [dartx.after](...args) {
+    return this.after.apply(this, args);
   }
-  [dartx.before](nodes) {
-    return this.before(nodes);
+  [dartx.before](...args) {
+    return this.before.apply(this, args);
   }
   get [dartx.nextElementSibling]() {
     return this.nextElementSibling;
@@ -44082,11 +44082,11 @@
   get [dartx.wholeText]() {
     return this.wholeText;
   }
-  [dartx.getDestinationInsertionPoints]() {
-    return this.getDestinationInsertionPoints();
+  [dartx.getDestinationInsertionPoints](...args) {
+    return this.getDestinationInsertionPoints.apply(this, args);
   }
-  [dartx.splitText](offset) {
-    return this.splitText(offset);
+  [dartx.splitText](...args) {
+    return this.splitText.apply(this, args);
   }
 };
 dart.setSignature(html.Text, {
@@ -44123,14 +44123,14 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.delete](cacheName) {
-    return this.delete(cacheName);
+  [dartx.delete](...args) {
+    return this.delete.apply(this, args);
   }
-  [dartx.has](cacheName) {
-    return this.has(cacheName);
+  [dartx.has](...args) {
+    return this.has.apply(this, args);
   }
-  [dartx.keys]() {
-    return this.keys();
+  [dartx.keys](...args) {
+    return this.keys.apply(this, args);
   }
   [dartx.match](request, options) {
     if (options === void 0) options = null;
@@ -44140,14 +44140,14 @@
     }
     return this[_match_2](request);
   }
-  [_match_1](request, options) {
-    return this.match(request, options);
+  [_match_1](...args) {
+    return this.match.apply(this, args);
   }
-  [_match_2](request) {
-    return this.match(request);
+  [_match_2](...args) {
+    return this.match.apply(this, args);
   }
-  [dartx.open](cacheName) {
-    return this.open(cacheName);
+  [dartx.open](...args) {
+    return this.open.apply(this, args);
   }
 };
 dart.setSignature(html.CacheStorage, {
@@ -44213,14 +44213,14 @@
     }
     return this[_getContext_2](contextId);
   }
-  [_getContext_1](contextId, attributes) {
-    return this.getContext(contextId, attributes);
+  [_getContext_1](...args) {
+    return this.getContext.apply(this, args);
   }
-  [_getContext_2](contextId) {
-    return this.getContext(contextId);
+  [_getContext_2](...args) {
+    return this.getContext.apply(this, args);
   }
-  [_toDataUrl](type, arguments_OR_quality) {
-    return this.toDataURL(type, arguments_OR_quality);
+  [_toDataUrl](...args) {
+    return this.toDataURL.apply(this, args);
   }
   get [dartx.onWebGlContextLost]() {
     return html.CanvasElement.webGlContextLostEvent.forElement(this);
@@ -44297,8 +44297,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.addColorStop](offset, color) {
-    return this.addColorStop(offset, color);
+  [dartx.addColorStop](...args) {
+    return this.addColorStop.apply(this, args);
   }
 };
 dart.setSignature(html.CanvasGradient, {
@@ -44313,8 +44313,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.setTransform](transform) {
-    return this.setTransform(transform);
+  [dartx.setTransform](...args) {
+    return this.setTransform.apply(this, args);
   }
 };
 dart.setSignature(html.CanvasPattern, {
@@ -44543,23 +44543,23 @@
     this[_addHitRegion_2]();
     return;
   }
-  [_addHitRegion_1](options) {
-    return this.addHitRegion(options);
+  [_addHitRegion_1](...args) {
+    return this.addHitRegion.apply(this, args);
   }
-  [_addHitRegion_2]() {
-    return this.addHitRegion();
+  [_addHitRegion_2](...args) {
+    return this.addHitRegion.apply(this, args);
   }
-  [dartx.beginPath]() {
-    return this.beginPath();
+  [dartx.beginPath](...args) {
+    return this.beginPath.apply(this, args);
   }
-  [dartx.clearHitRegions]() {
-    return this.clearHitRegions();
+  [dartx.clearHitRegions](...args) {
+    return this.clearHitRegions.apply(this, args);
   }
-  [dartx.clearRect](x, y, width, height) {
-    return this.clearRect(x, y, width, height);
+  [dartx.clearRect](...args) {
+    return this.clearRect.apply(this, args);
   }
-  [dartx.clip](path_OR_winding, winding) {
-    return this.clip(path_OR_winding, winding);
+  [dartx.clip](...args) {
+    return this.clip.apply(this, args);
   }
   [dartx.createImageData](imagedata_OR_sw, sh) {
     if (sh === void 0) sh = null;
@@ -44572,53 +44572,53 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_createImageData_1](imagedata) {
-    return this.createImageData(imagedata);
+  [_createImageData_1](...args) {
+    return this.createImageData.apply(this, args);
   }
-  [_createImageData_2](sw, sh) {
-    return this.createImageData(sw, sh);
+  [_createImageData_2](...args) {
+    return this.createImageData.apply(this, args);
   }
-  [dartx.createLinearGradient](x0, y0, x1, y1) {
-    return this.createLinearGradient(x0, y0, x1, y1);
+  [dartx.createLinearGradient](...args) {
+    return this.createLinearGradient.apply(this, args);
   }
-  [dartx.createPattern](image, repetitionType) {
-    return this.createPattern(image, repetitionType);
+  [dartx.createPattern](...args) {
+    return this.createPattern.apply(this, args);
   }
-  [dartx.createRadialGradient](x0, y0, r0, x1, y1, r1) {
-    return this.createRadialGradient(x0, y0, r0, x1, y1, r1);
+  [dartx.createRadialGradient](...args) {
+    return this.createRadialGradient.apply(this, args);
   }
-  [dartx.drawFocusIfNeeded](element_OR_path, element) {
-    return this.drawFocusIfNeeded(element_OR_path, element);
+  [dartx.drawFocusIfNeeded](...args) {
+    return this.drawFocusIfNeeded.apply(this, args);
   }
-  [dartx.fillRect](x, y, width, height) {
-    return this.fillRect(x, y, width, height);
+  [dartx.fillRect](...args) {
+    return this.fillRect.apply(this, args);
   }
   [dartx.getContextAttributes]() {
     return html_common.convertNativeToDart_Dictionary(this[_getContextAttributes_1]());
   }
-  [_getContextAttributes_1]() {
-    return this.getContextAttributes();
+  [_getContextAttributes_1](...args) {
+    return this.getContextAttributes.apply(this, args);
   }
   [dartx.getImageData](sx, sy, sw, sh) {
     return html_common.convertNativeToDart_ImageData(this[_getImageData_1](sx, sy, sw, sh));
   }
-  [_getImageData_1](sx, sy, sw, sh) {
-    return this.getImageData(sx, sy, sw, sh);
+  [_getImageData_1](...args) {
+    return this.getImageData.apply(this, args);
   }
-  [_getLineDash]() {
-    return this.getLineDash();
+  [_getLineDash](...args) {
+    return this.getLineDash.apply(this, args);
   }
-  [dartx.isContextLost]() {
-    return this.isContextLost();
+  [dartx.isContextLost](...args) {
+    return this.isContextLost.apply(this, args);
   }
-  [dartx.isPointInPath](path_OR_x, x_OR_y, winding_OR_y, winding) {
-    return this.isPointInPath(path_OR_x, x_OR_y, winding_OR_y, winding);
+  [dartx.isPointInPath](...args) {
+    return this.isPointInPath.apply(this, args);
   }
-  [dartx.isPointInStroke](path_OR_x, x_OR_y, y) {
-    return this.isPointInStroke(path_OR_x, x_OR_y, y);
+  [dartx.isPointInStroke](...args) {
+    return this.isPointInStroke.apply(this, args);
   }
-  [dartx.measureText](text) {
-    return this.measureText(text);
+  [dartx.measureText](...args) {
+    return this.measureText.apply(this, args);
   }
   [dartx.putImageData](imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
     if (dirtyX === void 0) dirtyX = null;
@@ -44637,77 +44637,77 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_putImageData_1](imagedata, dx, dy) {
-    return this.putImageData(imagedata, dx, dy);
+  [_putImageData_1](...args) {
+    return this.putImageData.apply(this, args);
   }
-  [_putImageData_2](imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
-    return this.putImageData(imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight);
+  [_putImageData_2](...args) {
+    return this.putImageData.apply(this, args);
   }
-  [dartx.removeHitRegion](id) {
-    return this.removeHitRegion(id);
+  [dartx.removeHitRegion](...args) {
+    return this.removeHitRegion.apply(this, args);
   }
-  [dartx.resetTransform]() {
-    return this.resetTransform();
+  [dartx.resetTransform](...args) {
+    return this.resetTransform.apply(this, args);
   }
-  [dartx.restore]() {
-    return this.restore();
+  [dartx.restore](...args) {
+    return this.restore.apply(this, args);
   }
-  [dartx.rotate](angle) {
-    return this.rotate(angle);
+  [dartx.rotate](...args) {
+    return this.rotate.apply(this, args);
   }
-  [dartx.save]() {
-    return this.save();
+  [dartx.save](...args) {
+    return this.save.apply(this, args);
   }
-  [dartx.scale](x, y) {
-    return this.scale(x, y);
+  [dartx.scale](...args) {
+    return this.scale.apply(this, args);
   }
-  [dartx.scrollPathIntoView](path) {
-    return this.scrollPathIntoView(path);
+  [dartx.scrollPathIntoView](...args) {
+    return this.scrollPathIntoView.apply(this, args);
   }
-  [dartx.setTransform](a, b, c, d, e, f) {
-    return this.setTransform(a, b, c, d, e, f);
+  [dartx.setTransform](...args) {
+    return this.setTransform.apply(this, args);
   }
-  [dartx.stroke](path) {
-    return this.stroke(path);
+  [dartx.stroke](...args) {
+    return this.stroke.apply(this, args);
   }
-  [dartx.strokeRect](x, y, width, height) {
-    return this.strokeRect(x, y, width, height);
+  [dartx.strokeRect](...args) {
+    return this.strokeRect.apply(this, args);
   }
-  [dartx.strokeText](text, x, y, maxWidth) {
-    return this.strokeText(text, x, y, maxWidth);
+  [dartx.strokeText](...args) {
+    return this.strokeText.apply(this, args);
   }
-  [dartx.transform](a, b, c, d, e, f) {
-    return this.transform(a, b, c, d, e, f);
+  [dartx.transform](...args) {
+    return this.transform.apply(this, args);
   }
-  [dartx.translate](x, y) {
-    return this.translate(x, y);
+  [dartx.translate](...args) {
+    return this.translate.apply(this, args);
   }
-  [_arc](x, y, radius, startAngle, endAngle, anticlockwise) {
-    return this.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+  [_arc](...args) {
+    return this.arc.apply(this, args);
   }
-  [dartx.arcTo](x1, y1, x2, y2, radius) {
-    return this.arcTo(x1, y1, x2, y2, radius);
+  [dartx.arcTo](...args) {
+    return this.arcTo.apply(this, args);
   }
-  [dartx.bezierCurveTo](cp1x, cp1y, cp2x, cp2y, x, y) {
-    return this.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);
+  [dartx.bezierCurveTo](...args) {
+    return this.bezierCurveTo.apply(this, args);
   }
-  [dartx.closePath]() {
-    return this.closePath();
+  [dartx.closePath](...args) {
+    return this.closePath.apply(this, args);
   }
-  [dartx.ellipse](x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
-    return this.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);
+  [dartx.ellipse](...args) {
+    return this.ellipse.apply(this, args);
   }
-  [dartx.lineTo](x, y) {
-    return this.lineTo(x, y);
+  [dartx.lineTo](...args) {
+    return this.lineTo.apply(this, args);
   }
-  [dartx.moveTo](x, y) {
-    return this.moveTo(x, y);
+  [dartx.moveTo](...args) {
+    return this.moveTo.apply(this, args);
   }
-  [dartx.quadraticCurveTo](cpx, cpy, x, y) {
-    return this.quadraticCurveTo(cpx, cpy, x, y);
+  [dartx.quadraticCurveTo](...args) {
+    return this.quadraticCurveTo.apply(this, args);
   }
-  [dartx.rect](x, y, width, height) {
-    return this.rect(x, y, width, height);
+  [dartx.rect](...args) {
+    return this.rect.apply(this, args);
   }
   [dartx.createImageDataFromImageData](imagedata) {
     return this.createImageData(imagedata);
@@ -44743,14 +44743,14 @@
       this[dartx.drawImageScaledFromSource](source, sourceRect[dartx.left], sourceRect[dartx.top], sourceRect[dartx.width], sourceRect[dartx.height], destRect[dartx.left], destRect[dartx.top], destRect[dartx.width], destRect[dartx.height]);
     }
   }
-  [dartx.drawImage](source, destX, destY) {
-    return this.drawImage(source, destX, destY);
+  [dartx.drawImage](...args) {
+    return this.drawImage.apply(this, args);
   }
-  [dartx.drawImageScaled](source, destX, destY, destWidth, destHeight) {
-    return this.drawImage(source, destX, destY, destWidth, destHeight);
+  [dartx.drawImageScaled](...args) {
+    return this.drawImage.apply(this, args);
   }
-  [dartx.drawImageScaledFromSource](source, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight) {
-    return this.drawImage(source, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight);
+  [dartx.drawImageScaledFromSource](...args) {
+    return this.drawImage.apply(this, args);
   }
   get [dartx.lineDashOffset]() {
     return this.lineDashOffset || this.webkitLineDashOffset;
@@ -44997,11 +44997,11 @@
     this[_postMessage_2](message_1);
     return;
   }
-  [_postMessage_1](message, transfer) {
-    return this.postMessage(message, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message) {
-    return this.postMessage(message);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
 };
 dart.setSignature(html.Client, {
@@ -45029,8 +45029,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.claim]() {
-    return this.claim();
+  [dartx.claim](...args) {
+    return this.claim.apply(this, args);
   }
   [dartx.matchAll](options) {
     if (options === void 0) options = null;
@@ -45040,14 +45040,14 @@
     }
     return this[_matchAll_2]();
   }
-  [_matchAll_1](options) {
-    return this.matchAll(options);
+  [_matchAll_1](...args) {
+    return this.matchAll.apply(this, args);
   }
-  [_matchAll_2]() {
-    return this.matchAll();
+  [_matchAll_2](...args) {
+    return this.matchAll.apply(this, args);
   }
-  [dartx.openWindow](url) {
-    return this.openWindow(url);
+  [dartx.openWindow](...args) {
+    return this.openWindow.apply(this, args);
   }
 };
 dart.setSignature(html.Clients, {
@@ -45205,8 +45205,8 @@
   get [_which]() {
     return this.which;
   }
-  [_initUIEvent](type, bubbles, cancelable, view, detail) {
-    return this.initUIEvent(type, bubbles, cancelable, view, detail);
+  [_initUIEvent](...args) {
+    return this.initUIEvent.apply(this, args);
   }
 };
 dart.setSignature(html.UIEvent, {
@@ -45269,8 +45269,8 @@
   get [dartx.data]() {
     return this.data;
   }
-  [_initCompositionEvent](type, bubbles, cancelable, view, data) {
-    return this.initCompositionEvent(type, bubbles, cancelable, view, data);
+  [_initCompositionEvent](...args) {
+    return this.initCompositionEvent.apply(this, args);
   }
 };
 dart.setSignature(html.CompositionEvent, {
@@ -45329,11 +45329,11 @@
   set [dartx.transform](value) {
     this.transform = value;
   }
-  [dartx.disconnect]() {
-    return this.disconnect();
+  [dartx.disconnect](...args) {
+    return this.disconnect.apply(this, args);
   }
-  [dartx.supports](attribute) {
-    return this.supports(attribute);
+  [dartx.supports](...args) {
+    return this.supports.apply(this, args);
   }
 };
 dart.setSignature(html.CompositorProxy, {
@@ -45382,14 +45382,14 @@
     this[_postMessage_2](message_1);
     return;
   }
-  [_postMessage_1](message, transfer) {
-    return this.postMessage(message, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message) {
-    return this.postMessage(message);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [dartx.terminate]() {
-    return this.terminate();
+  [dartx.terminate](...args) {
+    return this.terminate.apply(this, args);
   }
   get [dartx.onError]() {
     return html.CompositorWorker.errorEvent.forTarget(this);
@@ -45488,8 +45488,8 @@
   get [dartx.self]() {
     return this.self;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
   [dartx.fetch](input, init) {
     if (init === void 0) init = null;
@@ -45499,17 +45499,17 @@
     }
     return this[_fetch_2](input);
   }
-  [_fetch_1](input, init) {
-    return this.fetch(input, init);
+  [_fetch_1](...args) {
+    return this.fetch.apply(this, args);
   }
-  [_fetch_2](input) {
-    return this.fetch(input);
+  [_fetch_2](...args) {
+    return this.fetch.apply(this, args);
   }
-  [dartx.importScripts](urls) {
-    return this.importScripts(urls);
+  [dartx.importScripts](...args) {
+    return this.importScripts.apply(this, args);
   }
-  [_webkitRequestFileSystem](type, size, successCallback, errorCallback) {
-    return this.webkitRequestFileSystem(type, size, successCallback, errorCallback);
+  [_webkitRequestFileSystem](...args) {
+    return this.webkitRequestFileSystem.apply(this, args);
   }
   [dartx.webkitRequestFileSystem](type, size) {
     let completer = CompleterOfFileSystem().new();
@@ -45520,14 +45520,14 @@
     }, FileErrorTovoid()));
     return completer.future;
   }
-  [dartx.requestFileSystemSync](type, size) {
-    return this.webkitRequestFileSystemSync(type, size);
+  [dartx.requestFileSystemSync](...args) {
+    return this.webkitRequestFileSystemSync.apply(this, args);
   }
-  [dartx.resolveLocalFileSystemSyncUrl](url) {
-    return this.webkitResolveLocalFileSystemSyncURL(url);
+  [dartx.resolveLocalFileSystemSyncUrl](...args) {
+    return this.webkitResolveLocalFileSystemSyncURL.apply(this, args);
   }
-  [_webkitResolveLocalFileSystemUrl](url, successCallback, errorCallback) {
-    return this.webkitResolveLocalFileSystemURL(url, successCallback, errorCallback);
+  [_webkitResolveLocalFileSystemUrl](...args) {
+    return this.webkitResolveLocalFileSystemURL.apply(this, args);
   }
   [dartx.webkitResolveLocalFileSystemUrl](url) {
     let completer = CompleterOfEntry().new();
@@ -45538,29 +45538,29 @@
     }, FileErrorTovoid()));
     return completer.future;
   }
-  [dartx.atob](atob) {
-    return this.atob(atob);
+  [dartx.atob](...args) {
+    return this.atob.apply(this, args);
   }
-  [dartx.btoa](btoa) {
-    return this.btoa(btoa);
+  [dartx.btoa](...args) {
+    return this.btoa.apply(this, args);
   }
-  [_setInterval_String](handler, timeout, arguments$) {
-    return this.setInterval(handler, timeout, arguments$);
+  [_setInterval_String](...args) {
+    return this.setInterval.apply(this, args);
   }
-  [_setTimeout_String](handler, timeout, arguments$) {
-    return this.setTimeout(handler, timeout, arguments$);
+  [_setTimeout_String](...args) {
+    return this.setTimeout.apply(this, args);
   }
-  [_clearInterval](handle) {
-    return this.clearInterval(handle);
+  [_clearInterval](...args) {
+    return this.clearInterval.apply(this, args);
   }
-  [_clearTimeout](handle) {
-    return this.clearTimeout(handle);
+  [_clearTimeout](...args) {
+    return this.clearTimeout.apply(this, args);
   }
-  [_setInterval](handler, timeout) {
-    return this.setInterval(handler, timeout);
+  [_setInterval](...args) {
+    return this.setInterval.apply(this, args);
   }
-  [_setTimeout](handler, timeout) {
-    return this.setTimeout(handler, timeout);
+  [_setTimeout](...args) {
+    return this.setTimeout.apply(this, args);
   }
   get [dartx.onError]() {
     return html.WorkerGlobalScope.errorEvent.forTarget(this);
@@ -45625,8 +45625,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.cancelAnimationFrame](handle) {
-    return this.cancelAnimationFrame(handle);
+  [dartx.cancelAnimationFrame](...args) {
+    return this.cancelAnimationFrame.apply(this, args);
   }
   [dartx.postMessage](message, transfer) {
     if (transfer === void 0) transfer = null;
@@ -45639,14 +45639,14 @@
     this[_postMessage_2](message_1);
     return;
   }
-  [_postMessage_1](message, transfer) {
-    return this.postMessage(message, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message) {
-    return this.postMessage(message);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [dartx.requestAnimationFrame](callback) {
-    return this.requestAnimationFrame(callback);
+  [dartx.requestAnimationFrame](...args) {
+    return this.requestAnimationFrame.apply(this, args);
   }
   get [dartx.onMessage]() {
     return html.CompositorWorkerGlobalScope.messageEvent.forTarget(this);
@@ -45796,14 +45796,14 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.assertCondition](condition, arg) {
-    return this.assert(condition, arg);
+  [dartx.assertCondition](...args) {
+    return this.assert.apply(this, args);
   }
-  [dartx.timeline](title) {
-    return this.timeline(title);
+  [dartx.timeline](...args) {
+    return this.timeline.apply(this, args);
   }
-  [dartx.timelineEnd](title) {
-    return this.timelineEnd(title);
+  [dartx.timelineEnd](...args) {
+    return this.timelineEnd.apply(this, args);
   }
 };
 dart.setSignature(html.ConsoleBase, {
@@ -45839,8 +45839,8 @@
   set [dartx.select](value) {
     this.select = value;
   }
-  [dartx.getDistributedNodes]() {
-    return this.getDistributedNodes();
+  [dartx.getDistributedNodes](...args) {
+    return this.getDistributedNodes.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.ContentElement, 'created');
@@ -45947,8 +45947,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.notifySignedIn](credential) {
-    return this.notifySignedIn(credential);
+  [dartx.notifySignedIn](...args) {
+    return this.notifySignedIn.apply(this, args);
   }
   [dartx.request](options) {
     if (options === void 0) options = null;
@@ -45958,14 +45958,14 @@
     }
     return this[_request_2]();
   }
-  [_request_1](options) {
-    return this.request(options);
+  [_request_1](...args) {
+    return this.request.apply(this, args);
   }
-  [_request_2]() {
-    return this.request();
+  [_request_2](...args) {
+    return this.request.apply(this, args);
   }
-  [dartx.requireUserMediation]() {
-    return this.requireUserMediation();
+  [dartx.requireUserMediation](...args) {
+    return this.requireUserMediation.apply(this, args);
   }
 };
 dart.setSignature(html.CredentialsContainer, {
@@ -45990,8 +45990,8 @@
   get [dartx.client]() {
     return this.client;
   }
-  [dartx.acceptConnection](shouldAccept) {
-    return this.acceptConnection(shouldAccept);
+  [dartx.acceptConnection](...args) {
+    return this.acceptConnection.apply(this, args);
   }
 };
 dart.setSignature(html.CrossOriginConnectEvent, {
@@ -46026,11 +46026,11 @@
     this[_postMessage_2](message_1);
     return;
   }
-  [_postMessage_1](message, transfer) {
-    return this.postMessage(message, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message) {
-    return this.postMessage(message);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
 };
 dart.setSignature(html.CrossOriginServiceWorkerClient, {
@@ -46064,8 +46064,8 @@
   get [dartx.subtle]() {
     return this.subtle;
   }
-  [_getRandomValues](array) {
-    return this.getRandomValues(array);
+  [_getRandomValues](...args) {
+    return this.getRandomValues.apply(this, args);
   }
 };
 dart.setSignature(html.Crypto, {
@@ -46234,11 +46234,11 @@
   get [dartx.cssRules]() {
     return this.cssRules;
   }
-  [dartx.deleteRule](index) {
-    return this.deleteRule(index);
+  [dartx.deleteRule](...args) {
+    return this.deleteRule.apply(this, args);
   }
-  [dartx.insertRule](rule, index) {
-    return this.insertRule(rule, index);
+  [dartx.insertRule](...args) {
+    return this.insertRule.apply(this, args);
   }
 };
 dart.setSignature(html.CssGroupingRule, {
@@ -46326,17 +46326,17 @@
   set [dartx.name](value) {
     this.name = value;
   }
-  [__getter__](index) {
-    return this.__getter__(index);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [dartx.appendRule](rule) {
-    return this.appendRule(rule);
+  [dartx.appendRule](...args) {
+    return this.appendRule.apply(this, args);
   }
-  [dartx.deleteRule](select) {
-    return this.deleteRule(select);
+  [dartx.deleteRule](...args) {
+    return this.deleteRule.apply(this, args);
   }
-  [dartx.findRule](select) {
-    return this.findRule(select);
+  [dartx.findRule](...args) {
+    return this.findRule.apply(this, args);
   }
 };
 dart.setSignature(html.CssKeyframesRule, {
@@ -50874,17 +50874,17 @@
   get [dartx.parentRule]() {
     return this.parentRule;
   }
-  [dartx.getPropertyPriority](property) {
-    return this.getPropertyPriority(property);
+  [dartx.getPropertyPriority](...args) {
+    return this.getPropertyPriority.apply(this, args);
   }
-  [_getPropertyValue](property) {
-    return this.getPropertyValue(property);
+  [_getPropertyValue](...args) {
+    return this.getPropertyValue.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.removeProperty](property) {
-    return this.removeProperty(property);
+  [dartx.removeProperty](...args) {
+    return this.removeProperty.apply(this, args);
   }
   get [dartx.background]() {
     return this[_background];
@@ -52866,17 +52866,17 @@
   get [dartx.rules]() {
     return this.rules;
   }
-  [dartx.addRule](selector, style, index) {
-    return this.addRule(selector, style, index);
+  [dartx.addRule](...args) {
+    return this.addRule.apply(this, args);
   }
-  [dartx.deleteRule](index) {
-    return this.deleteRule(index);
+  [dartx.deleteRule](...args) {
+    return this.deleteRule.apply(this, args);
   }
-  [dartx.insertRule](rule, index) {
-    return this.insertRule(rule, index);
+  [dartx.insertRule](...args) {
+    return this.insertRule.apply(this, args);
   }
-  [dartx.removeRule](index) {
-    return this.removeRule(index);
+  [dartx.removeRule](...args) {
+    return this.removeRule.apply(this, args);
   }
 };
 dart.setSignature(html.CssStyleSheet, {
@@ -52910,11 +52910,11 @@
   get [dartx.cssRules]() {
     return this.cssRules;
   }
-  [dartx.deleteRule](index) {
-    return this.deleteRule(index);
+  [dartx.deleteRule](...args) {
+    return this.deleteRule.apply(this, args);
   }
-  [dartx.insertRule](rule, index) {
-    return this.insertRule(rule, index);
+  [dartx.insertRule](...args) {
+    return this.insertRule.apply(this, args);
   }
 };
 dart.setSignature(html.CssSupportsRule, {
@@ -53004,8 +53004,8 @@
   get [_get__detail]() {
     return this.detail;
   }
-  [_initCustomEvent](type, bubbles, cancelable, detail) {
-    return this.initCustomEvent(type, bubbles, cancelable, detail);
+  [_initCustomEvent](...args) {
+    return this.initCustomEvent.apply(this, args);
   }
 };
 dart.setSignature(html.CustomEvent, {
@@ -53117,17 +53117,17 @@
   get [dartx.types]() {
     return this.types;
   }
-  [dartx.clearData](format) {
-    return this.clearData(format);
+  [dartx.clearData](...args) {
+    return this.clearData.apply(this, args);
   }
-  [dartx.getData](format) {
-    return this.getData(format);
+  [dartx.getData](...args) {
+    return this.getData.apply(this, args);
   }
-  [dartx.setData](format, data) {
-    return this.setData(format, data);
+  [dartx.setData](...args) {
+    return this.setData.apply(this, args);
   }
-  [dartx.setDragImage](image, x, y) {
-    return this.setDragImage(image, x, y);
+  [dartx.setDragImage](...args) {
+    return this.setDragImage.apply(this, args);
   }
 };
 dart.setSignature(html.DataTransfer, {
@@ -53165,11 +53165,11 @@
   get [dartx.type]() {
     return this.type;
   }
-  [dartx.getAsFile]() {
-    return this.getAsFile();
+  [dartx.getAsFile](...args) {
+    return this.getAsFile.apply(this, args);
   }
-  [_getAsString](callback) {
-    return this.getAsString(callback);
+  [_getAsString](...args) {
+    return this.getAsString.apply(this, args);
   }
   [dartx.getAsString]() {
     let completer = CompleterOfString().new();
@@ -53178,8 +53178,8 @@
     }, StringTovoid()));
     return completer.future;
   }
-  [dartx.getAsEntry]() {
-    return this.webkitGetAsEntry();
+  [dartx.getAsEntry](...args) {
+    return this.webkitGetAsEntry.apply(this, args);
   }
 };
 dart.setSignature(html.DataTransferItem, {
@@ -53213,23 +53213,23 @@
   get [dartx.length]() {
     return this.length;
   }
-  [dartx.add](data_OR_file, type) {
-    return this.add(data_OR_file, type);
+  [dartx.add](...args) {
+    return this.add.apply(this, args);
   }
-  [dartx.addData](data, type) {
-    return this.add(data, type);
+  [dartx.addData](...args) {
+    return this.add.apply(this, args);
   }
-  [dartx.addFile](file) {
-    return this.add(file);
+  [dartx.addFile](...args) {
+    return this.add.apply(this, args);
   }
-  [dartx.clear]() {
-    return this.clear();
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.remove](index) {
-    return this.remove(index);
+  [dartx.remove](...args) {
+    return this.remove.apply(this, args);
   }
   [dartx._get](index) {
     return this[index];
@@ -53269,11 +53269,11 @@
     this[_postMessage_2](message_1);
     return;
   }
-  [_postMessage_1](message, transfer) {
-    return this.postMessage(message, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message) {
-    return this.postMessage(message);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
   get [dartx.onMessage]() {
     return html.DedicatedWorkerGlobalScope.messageEvent.forTarget(this);
@@ -53341,11 +53341,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.queryUsageAndQuota](storageType, usageCallback, errorCallback) {
-    return this.queryUsageAndQuota(storageType, usageCallback, errorCallback);
+  [dartx.queryUsageAndQuota](...args) {
+    return this.queryUsageAndQuota.apply(this, args);
   }
-  [dartx.requestQuota](storageType, newQuotaInBytes, quotaCallback, errorCallback) {
-    return this.requestQuota(storageType, newQuotaInBytes, quotaCallback, errorCallback);
+  [dartx.requestQuota](...args) {
+    return this.requestQuota.apply(this, args);
   }
 };
 dart.setSignature(html.DeprecatedStorageInfo, {
@@ -53370,11 +53370,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.queryUsageAndQuota](usageCallback, errorCallback) {
-    return this.queryUsageAndQuota(usageCallback, errorCallback);
+  [dartx.queryUsageAndQuota](...args) {
+    return this.queryUsageAndQuota.apply(this, args);
   }
-  [dartx.requestQuota](newQuotaInBytes, quotaCallback, errorCallback) {
-    return this.requestQuota(newQuotaInBytes, quotaCallback, errorCallback);
+  [dartx.requestQuota](...args) {
+    return this.requestQuota.apply(this, args);
   }
 };
 dart.setSignature(html.DeprecatedStorageQuota, {
@@ -53509,8 +53509,8 @@
   get [dartx.rotationRate]() {
     return this.rotationRate;
   }
-  [dartx.initDeviceMotionEvent](type, bubbles, cancelable, acceleration, accelerationIncludingGravity, rotationRate, interval) {
-    return this.initDeviceMotionEvent(type, bubbles, cancelable, acceleration, accelerationIncludingGravity, rotationRate, interval);
+  [dartx.initDeviceMotionEvent](...args) {
+    return this.initDeviceMotionEvent.apply(this, args);
   }
 };
 dart.setSignature(html.DeviceMotionEvent, {
@@ -53558,8 +53558,8 @@
   get [dartx.gamma]() {
     return this.gamma;
   }
-  [_initDeviceOrientationEvent](type, bubbles, cancelable, alpha, beta, gamma, absolute) {
-    return this.initDeviceOrientationEvent(type, bubbles, cancelable, alpha, beta, gamma, absolute);
+  [_initDeviceOrientationEvent](...args) {
+    return this.initDeviceOrientationEvent.apply(this, args);
   }
 };
 dart.setSignature(html.DeviceOrientationEvent, {
@@ -53632,14 +53632,14 @@
   set [dartx.returnValue](value) {
     this.returnValue = value;
   }
-  [dartx.close](returnValue) {
-    return this.close(returnValue);
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
-  [dartx.show]() {
-    return this.show();
+  [dartx.show](...args) {
+    return this.show.apply(this, args);
   }
-  [dartx.showModal]() {
-    return this.showModal();
+  [dartx.showModal](...args) {
+    return this.showModal.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.DialogElement, 'created');
@@ -53709,8 +53709,8 @@
   get [dartx.name]() {
     return this.name;
   }
-  [_copyTo](parent, opts) {
-    return this.copyTo(parent, opts);
+  [_copyTo](...args) {
+    return this.copyTo.apply(this, args);
   }
   [dartx.copyTo](parent, opts) {
     let name = opts && 'name' in opts ? opts.name : null;
@@ -53722,8 +53722,8 @@
       }, FileErrorTovoid())});
     return completer.future;
   }
-  [_getMetadata](successCallback, errorCallback) {
-    return this.getMetadata(successCallback, errorCallback);
+  [_getMetadata](...args) {
+    return this.getMetadata.apply(this, args);
   }
   [dartx.getMetadata]() {
     let completer = CompleterOfMetadata().new();
@@ -53734,8 +53734,8 @@
     }, FileErrorTovoid()));
     return completer.future;
   }
-  [_getParent](successCallback, errorCallback) {
-    return this.getParent(successCallback, errorCallback);
+  [_getParent](...args) {
+    return this.getParent.apply(this, args);
   }
   [dartx.getParent]() {
     let completer = CompleterOfEntry().new();
@@ -53746,8 +53746,8 @@
     }, FileErrorTovoid()));
     return completer.future;
   }
-  [_moveTo](parent, opts) {
-    return this.moveTo(parent, opts);
+  [_moveTo](...args) {
+    return this.moveTo.apply(this, args);
   }
   [dartx.moveTo](parent, opts) {
     let name = opts && 'name' in opts ? opts.name : null;
@@ -53759,8 +53759,8 @@
       }, FileErrorTovoid())});
     return completer.future;
   }
-  [_remove](successCallback, errorCallback) {
-    return this.remove(successCallback, errorCallback);
+  [_remove](...args) {
+    return this.remove.apply(this, args);
   }
   [dartx.remove]() {
     let completer = async.Completer.new();
@@ -53771,8 +53771,8 @@
     }, FileErrorTovoid()));
     return completer.future;
   }
-  [dartx.toUrl]() {
-    return this.toURL();
+  [dartx.toUrl](...args) {
+    return this.toURL.apply(this, args);
   }
 };
 dart.setSignature(html.Entry, {
@@ -53825,8 +53825,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.createReader]() {
-    return this.createReader();
+  [dartx.createReader](...args) {
+    return this.createReader.apply(this, args);
   }
   [__getDirectory](path, opts) {
     let options = opts && 'options' in opts ? opts.options : null;
@@ -53850,17 +53850,17 @@
     this[__getDirectory_4](path);
     return;
   }
-  [__getDirectory_1](path, options, successCallback, errorCallback) {
-    return this.getDirectory(path, options, successCallback, errorCallback);
+  [__getDirectory_1](...args) {
+    return this.getDirectory.apply(this, args);
   }
-  [__getDirectory_2](path, options, successCallback) {
-    return this.getDirectory(path, options, successCallback);
+  [__getDirectory_2](...args) {
+    return this.getDirectory.apply(this, args);
   }
-  [__getDirectory_3](path, options) {
-    return this.getDirectory(path, options);
+  [__getDirectory_3](...args) {
+    return this.getDirectory.apply(this, args);
   }
-  [__getDirectory_4](path) {
-    return this.getDirectory(path);
+  [__getDirectory_4](...args) {
+    return this.getDirectory.apply(this, args);
   }
   [_getDirectory](path, opts) {
     let options = opts && 'options' in opts ? opts.options : null;
@@ -53894,17 +53894,17 @@
     this[__getFile_4](path);
     return;
   }
-  [__getFile_1](path, options, successCallback, errorCallback) {
-    return this.getFile(path, options, successCallback, errorCallback);
+  [__getFile_1](...args) {
+    return this.getFile.apply(this, args);
   }
-  [__getFile_2](path, options, successCallback) {
-    return this.getFile(path, options, successCallback);
+  [__getFile_2](...args) {
+    return this.getFile.apply(this, args);
   }
-  [__getFile_3](path, options) {
-    return this.getFile(path, options);
+  [__getFile_3](...args) {
+    return this.getFile.apply(this, args);
   }
-  [__getFile_4](path) {
-    return this.getFile(path);
+  [__getFile_4](...args) {
+    return this.getFile.apply(this, args);
   }
   [_getFile](path, opts) {
     let options = opts && 'options' in opts ? opts.options : null;
@@ -53916,8 +53916,8 @@
       }, FileErrorTovoid())});
     return completer.future;
   }
-  [_removeRecursively](successCallback, errorCallback) {
-    return this.removeRecursively(successCallback, errorCallback);
+  [_removeRecursively](...args) {
+    return this.removeRecursively.apply(this, args);
   }
   [dartx.removeRecursively]() {
     let completer = async.Completer.new();
@@ -53962,8 +53962,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [_readEntries](successCallback, errorCallback) {
-    return this.readEntries(successCallback, errorCallback);
+  [_readEntries](...args) {
+    return this.readEntries.apply(this, args);
   }
   [dartx.readEntries]() {
     let completer = CompleterOfListOfEntry().new();
@@ -54260,93 +54260,93 @@
   get [_webkitVisibilityState]() {
     return this.webkitVisibilityState;
   }
-  [dartx.adoptNode](node) {
-    return this.adoptNode(node);
+  [dartx.adoptNode](...args) {
+    return this.adoptNode.apply(this, args);
   }
-  [_caretRangeFromPoint](x, y) {
-    return this.caretRangeFromPoint(x, y);
+  [_caretRangeFromPoint](...args) {
+    return this.caretRangeFromPoint.apply(this, args);
   }
-  [dartx.createDocumentFragment]() {
-    return this.createDocumentFragment();
+  [dartx.createDocumentFragment](...args) {
+    return this.createDocumentFragment.apply(this, args);
   }
-  [_createElement](localName_OR_tagName, typeExtension) {
-    return this.createElement(localName_OR_tagName, typeExtension);
+  [_createElement](...args) {
+    return this.createElement.apply(this, args);
   }
-  [_createElementNS](namespaceURI, qualifiedName, typeExtension) {
-    return this.createElementNS(namespaceURI, qualifiedName, typeExtension);
+  [_createElementNS](...args) {
+    return this.createElementNS.apply(this, args);
   }
-  [_createEvent](eventType) {
-    return this.createEvent(eventType);
+  [_createEvent](...args) {
+    return this.createEvent.apply(this, args);
   }
-  [dartx.createRange]() {
-    return this.createRange();
+  [dartx.createRange](...args) {
+    return this.createRange.apply(this, args);
   }
-  [_createTextNode](data) {
-    return this.createTextNode(data);
+  [_createTextNode](...args) {
+    return this.createTextNode.apply(this, args);
   }
   [_createTouch](window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force) {
     let target_1 = html._convertDartToNative_EventTarget(target);
     return this[_createTouch_1](window, target_1, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force);
   }
-  [_createTouch_1](window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force) {
-    return this.createTouch(window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force);
+  [_createTouch_1](...args) {
+    return this.createTouch.apply(this, args);
   }
-  [_createTouchList](touches) {
-    return this.createTouchList(touches);
+  [_createTouchList](...args) {
+    return this.createTouchList.apply(this, args);
   }
-  [_elementFromPoint](x, y) {
-    return this.elementFromPoint(x, y);
+  [_elementFromPoint](...args) {
+    return this.elementFromPoint.apply(this, args);
   }
-  [dartx.elementsFromPoint](x, y) {
-    return this.elementsFromPoint(x, y);
+  [dartx.elementsFromPoint](...args) {
+    return this.elementsFromPoint.apply(this, args);
   }
-  [dartx.execCommand](commandId, showUI, value) {
-    return this.execCommand(commandId, showUI, value);
+  [dartx.execCommand](...args) {
+    return this.execCommand.apply(this, args);
   }
-  [dartx.exitFullscreen]() {
-    return this.exitFullscreen();
+  [dartx.exitFullscreen](...args) {
+    return this.exitFullscreen.apply(this, args);
   }
-  [dartx.exitPointerLock]() {
-    return this.exitPointerLock();
+  [dartx.exitPointerLock](...args) {
+    return this.exitPointerLock.apply(this, args);
   }
-  [_getCssCanvasContext](contextId, name, width, height) {
-    return this.getCSSCanvasContext(contextId, name, width, height);
+  [_getCssCanvasContext](...args) {
+    return this.getCSSCanvasContext.apply(this, args);
   }
-  [dartx.getElementsByClassName](classNames) {
-    return this.getElementsByClassName(classNames);
+  [dartx.getElementsByClassName](...args) {
+    return this.getElementsByClassName.apply(this, args);
   }
-  [dartx.getElementsByName](elementName) {
-    return this.getElementsByName(elementName);
+  [dartx.getElementsByName](...args) {
+    return this.getElementsByName.apply(this, args);
   }
-  [dartx.getElementsByTagName](localName) {
-    return this.getElementsByTagName(localName);
+  [dartx.getElementsByTagName](...args) {
+    return this.getElementsByTagName.apply(this, args);
   }
-  [dartx.importNode](node, deep) {
-    return this.importNode(node, deep);
+  [dartx.importNode](...args) {
+    return this.importNode.apply(this, args);
   }
-  [dartx.queryCommandEnabled](commandId) {
-    return this.queryCommandEnabled(commandId);
+  [dartx.queryCommandEnabled](...args) {
+    return this.queryCommandEnabled.apply(this, args);
   }
-  [dartx.queryCommandIndeterm](commandId) {
-    return this.queryCommandIndeterm(commandId);
+  [dartx.queryCommandIndeterm](...args) {
+    return this.queryCommandIndeterm.apply(this, args);
   }
-  [dartx.queryCommandState](commandId) {
-    return this.queryCommandState(commandId);
+  [dartx.queryCommandState](...args) {
+    return this.queryCommandState.apply(this, args);
   }
-  [dartx.queryCommandSupported](commandId) {
-    return this.queryCommandSupported(commandId);
+  [dartx.queryCommandSupported](...args) {
+    return this.queryCommandSupported.apply(this, args);
   }
-  [dartx.queryCommandValue](commandId) {
-    return this.queryCommandValue(commandId);
+  [dartx.queryCommandValue](...args) {
+    return this.queryCommandValue.apply(this, args);
   }
-  [dartx.transformDocumentToTreeView](noStyleMessage) {
-    return this.transformDocumentToTreeView(noStyleMessage);
+  [dartx.transformDocumentToTreeView](...args) {
+    return this.transformDocumentToTreeView.apply(this, args);
   }
-  [_webkitExitFullscreen]() {
-    return this.webkitExitFullscreen();
+  [_webkitExitFullscreen](...args) {
+    return this.webkitExitFullscreen.apply(this, args);
   }
-  [dartx.getElementById](elementId) {
-    return this.getElementById(elementId);
+  [dartx.getElementById](...args) {
+    return this.getElementById.apply(this, args);
   }
   get [_childElementCount]() {
     return this.childElementCount;
@@ -54360,11 +54360,11 @@
   get [_lastElementChild]() {
     return this.lastElementChild;
   }
-  [dartx.querySelector](selectors) {
-    return this.querySelector(selectors);
+  [dartx.querySelector](...args) {
+    return this.querySelector.apply(this, args);
   }
-  [_querySelectorAll](selectors) {
-    return this.querySelectorAll(selectors);
+  [_querySelectorAll](...args) {
+    return this.querySelectorAll.apply(this, args);
   }
   get [dartx.onAbort]() {
     return html.Element.abortEvent.forTarget(this);
@@ -54899,8 +54899,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.getElementById](elementId) {
-    return this.getElementById(elementId);
+  [dartx.getElementById](...args) {
+    return this.getElementById.apply(this, args);
   }
   get [_childElementCount]() {
     return this.childElementCount;
@@ -54911,11 +54911,11 @@
   get [_lastElementChild]() {
     return this.lastElementChild;
   }
-  [dartx.querySelector](selectors) {
-    return this.querySelector(selectors);
+  [dartx.querySelector](...args) {
+    return this.querySelector.apply(this, args);
   }
-  [_querySelectorAll](selectors) {
-    return this.querySelectorAll(selectors);
+  [_querySelectorAll](...args) {
+    return this.querySelectorAll.apply(this, args);
   }
 };
 html.DocumentFragment[dart.implements] = () => [html.NonElementParentNode, html.ParentNode];
@@ -55080,17 +55080,17 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.createDocument](namespaceURI, qualifiedName, doctype) {
-    return this.createDocument(namespaceURI, qualifiedName, doctype);
+  [dartx.createDocument](...args) {
+    return this.createDocument.apply(this, args);
   }
-  [dartx.createDocumentType](qualifiedName, publicId, systemId) {
-    return this.createDocumentType(qualifiedName, publicId, systemId);
+  [dartx.createDocumentType](...args) {
+    return this.createDocumentType.apply(this, args);
   }
-  [dartx.createHtmlDocument](title) {
-    return this.createHTMLDocument(title);
+  [dartx.createHtmlDocument](...args) {
+    return this.createHTMLDocument.apply(this, args);
   }
-  [dartx.hasFeature]() {
-    return this.hasFeature();
+  [dartx.hasFeature](...args) {
+    return this.hasFeature.apply(this, args);
   }
 };
 dart.setSignature(html.DomImplementation, {
@@ -55110,8 +55110,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.next](value) {
-    return this.next(value);
+  [dartx.next](...args) {
+    return this.next.apply(this, args);
   }
 };
 dart.setSignature(html.DomIterator, {
@@ -55228,26 +55228,26 @@
   get [dartx.m44]() {
     return this.m44;
   }
-  [dartx.multiply](other) {
-    return this.multiply(other);
+  [dartx.multiply](...args) {
+    return this.multiply.apply(this, args);
   }
-  [dartx.scale](scale, originX, originY) {
-    return this.scale(scale, originX, originY);
+  [dartx.scale](...args) {
+    return this.scale.apply(this, args);
   }
-  [dartx.scale3d](scale, originX, originY, originZ) {
-    return this.scale3d(scale, originX, originY, originZ);
+  [dartx.scale3d](...args) {
+    return this.scale3d.apply(this, args);
   }
-  [dartx.scaleNonUniform](scaleX, scaleY, scaleZn, originX, originY, originZ) {
-    return this.scaleNonUniform(scaleX, scaleY, scaleZn, originX, originY, originZ);
+  [dartx.scaleNonUniform](...args) {
+    return this.scaleNonUniform.apply(this, args);
   }
-  [dartx.toFloat32Array]() {
-    return this.toFloat32Array();
+  [dartx.toFloat32Array](...args) {
+    return this.toFloat32Array.apply(this, args);
   }
-  [dartx.toFloat64Array]() {
-    return this.toFloat64Array();
+  [dartx.toFloat64Array](...args) {
+    return this.toFloat64Array.apply(this, args);
   }
-  [dartx.translate](tx, ty, tz) {
-    return this.translate(tx, ty, tz);
+  [dartx.translate](...args) {
+    return this.translate.apply(this, args);
   }
 };
 dart.setSignature(html.DomMatrixReadOnly, {
@@ -55493,23 +55493,23 @@
   set [dartx.m44](value) {
     this.m44 = value;
   }
-  [dartx.multiplySelf](other) {
-    return this.multiplySelf(other);
+  [dartx.multiplySelf](...args) {
+    return this.multiplySelf.apply(this, args);
   }
-  [dartx.preMultiplySelf](other) {
-    return this.preMultiplySelf(other);
+  [dartx.preMultiplySelf](...args) {
+    return this.preMultiplySelf.apply(this, args);
   }
-  [dartx.scale3dSelf](scale, originX, originY, originZ) {
-    return this.scale3dSelf(scale, originX, originY, originZ);
+  [dartx.scale3dSelf](...args) {
+    return this.scale3dSelf.apply(this, args);
   }
-  [dartx.scaleNonUniformSelf](scaleX, scaleY, scaleZ, originX, originY, originZ) {
-    return this.scaleNonUniformSelf(scaleX, scaleY, scaleZ, originX, originY, originZ);
+  [dartx.scaleNonUniformSelf](...args) {
+    return this.scaleNonUniformSelf.apply(this, args);
   }
-  [dartx.scaleSelf](scale, originX, originY) {
-    return this.scaleSelf(scale, originX, originY);
+  [dartx.scaleSelf](...args) {
+    return this.scaleSelf.apply(this, args);
   }
-  [dartx.translateSelf](tx, ty, tz) {
-    return this.translateSelf(tx, ty, tz);
+  [dartx.translateSelf](...args) {
+    return this.translateSelf.apply(this, args);
   }
 };
 dart.setSignature(html.DomMatrix, {
@@ -55569,8 +55569,8 @@
   static _create_1() {
     return new DOMParser();
   }
-  [dartx.parseFromString](str, type) {
-    return this.parseFromString(str, type);
+  [dartx.parseFromString](...args) {
+    return this.parseFromString.apply(this, args);
   }
 };
 dart.setSignature(html.DomParser, {
@@ -55889,20 +55889,20 @@
   get [dartx.length]() {
     return this.length;
   }
-  [dartx.add](tokens) {
-    return this.add(tokens);
+  [dartx.add](...args) {
+    return this.add.apply(this, args);
   }
-  [dartx.contains](token) {
-    return this.contains(token);
+  [dartx.contains](...args) {
+    return this.contains.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.remove](tokens) {
-    return this.remove(tokens);
+  [dartx.remove](...args) {
+    return this.remove.apply(this, args);
   }
-  [dartx.toggle](token, force) {
-    return this.toggle(token, force);
+  [dartx.toggle](...args) {
+    return this.toggle.apply(this, args);
   }
 };
 dart.setSignature(html.DomTokenList, {
@@ -56127,11 +56127,11 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [__getter__](index) {
-    return this.__getter__(index);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html.DomStringList[dart.implements] = () => [ListOfString()];
@@ -56855,11 +56855,11 @@
   set [dartx.width](value) {
     this.width = value;
   }
-  [__getter__](index_OR_name) {
-    return this.__getter__(index_OR_name);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [__setter__](index_OR_name, value) {
-    return this.__setter__(index_OR_name, value);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.EmbedElement, 'created');
@@ -56987,8 +56987,8 @@
   get [dartx.withCredentials]() {
     return this.withCredentials;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
   get [dartx.onError]() {
     return html.EventSource.errorEvent.forTarget(this);
@@ -57103,8 +57103,8 @@
   static _create_2(type) {
     return new ExtendableEvent(type);
   }
-  [dartx.waitUntil](value) {
-    return this.waitUntil(value);
+  [dartx.waitUntil](...args) {
+    return this.waitUntil.apply(this, args);
   }
 };
 dart.setSignature(html.ExtendableEvent, {
@@ -57184,8 +57184,8 @@
   get [dartx.request]() {
     return this.request;
   }
-  [dartx.respondWith](value) {
-    return this.respondWith(value);
+  [dartx.respondWith](...args) {
+    return this.respondWith.apply(this, args);
   }
 };
 dart.setSignature(html.FetchEvent, {
@@ -57266,14 +57266,14 @@
   get [dartx.willValidate]() {
     return this.willValidate;
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
-  [dartx.setCustomValidity](error) {
-    return this.setCustomValidity(error);
+  [dartx.setCustomValidity](...args) {
+    return this.setCustomValidity.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.FieldSetElement, 'created');
@@ -57371,8 +57371,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [_createWriter](successCallback, errorCallback) {
-    return this.createWriter(successCallback, errorCallback);
+  [_createWriter](...args) {
+    return this.createWriter.apply(this, args);
   }
   [dartx.createWriter]() {
     let completer = CompleterOfFileWriter().new();
@@ -57383,8 +57383,8 @@
     }, FileErrorTovoid()));
     return completer.future;
   }
-  [_file](successCallback, errorCallback) {
-    return this.file(successCallback, errorCallback);
+  [_file](...args) {
+    return this.file.apply(this, args);
   }
   [dartx.file]() {
     let completer = CompleterOfFile().new();
@@ -57501,8 +57501,8 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html.FileList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfFile()];
@@ -57561,17 +57561,17 @@
   get [dartx.readyState]() {
     return this.readyState;
   }
-  [dartx.abort]() {
-    return this.abort();
+  [dartx.abort](...args) {
+    return this.abort.apply(this, args);
   }
-  [dartx.readAsArrayBuffer](blob) {
-    return this.readAsArrayBuffer(blob);
+  [dartx.readAsArrayBuffer](...args) {
+    return this.readAsArrayBuffer.apply(this, args);
   }
-  [dartx.readAsDataUrl](blob) {
-    return this.readAsDataURL(blob);
+  [dartx.readAsDataUrl](...args) {
+    return this.readAsDataURL.apply(this, args);
   }
-  [dartx.readAsText](blob, label) {
-    return this.readAsText(blob, label);
+  [dartx.readAsText](...args) {
+    return this.readAsText.apply(this, args);
   }
   get [dartx.onAbort]() {
     return html.FileReader.abortEvent.forTarget(this);
@@ -57730,17 +57730,17 @@
   get [dartx.readyState]() {
     return this.readyState;
   }
-  [dartx.abort]() {
-    return this.abort();
+  [dartx.abort](...args) {
+    return this.abort.apply(this, args);
   }
-  [dartx.seek](position) {
-    return this.seek(position);
+  [dartx.seek](...args) {
+    return this.seek.apply(this, args);
   }
-  [dartx.truncate](size) {
-    return this.truncate(size);
+  [dartx.truncate](...args) {
+    return this.truncate.apply(this, args);
   }
-  [dartx.write](data) {
-    return this.write(data);
+  [dartx.write](...args) {
+    return this.write.apply(this, args);
   }
   get [dartx.onAbort]() {
     return html.FileWriter.abortEvent.forTarget(this);
@@ -57941,8 +57941,8 @@
   set [dartx.weight](value) {
     this.weight = value;
   }
-  [dartx.load]() {
-    return this.load();
+  [dartx.load](...args) {
+    return this.load.apply(this, args);
   }
 };
 dart.setSignature(html.FontFace, {
@@ -57989,23 +57989,23 @@
   get [dartx.status]() {
     return this.status;
   }
-  [dartx.add](fontFace) {
-    return this.add(fontFace);
+  [dartx.add](...args) {
+    return this.add.apply(this, args);
   }
-  [dartx.check](font, text) {
-    return this.check(font, text);
+  [dartx.check](...args) {
+    return this.check.apply(this, args);
   }
-  [dartx.clear]() {
-    return this.clear();
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.delete](fontFace) {
-    return this.delete(fontFace);
+  [dartx.delete](...args) {
+    return this.delete.apply(this, args);
   }
-  [dartx.forEach](callback, thisArg) {
-    return this.forEach(callback, thisArg);
+  [dartx.forEach](...args) {
+    return this.forEach.apply(this, args);
   }
-  [dartx.has](fontFace) {
-    return this.has(fontFace);
+  [dartx.has](...args) {
+    return this.has.apply(this, args);
   }
 };
 dart.setSignature(html.FontFaceSet, {
@@ -58070,26 +58070,26 @@
   static get supported() {
     return !!window.FormData;
   }
-  [dartx.append](name, value) {
-    return this.append(name, value);
+  [dartx.append](...args) {
+    return this.append.apply(this, args);
   }
-  [dartx.appendBlob](name, value, filename) {
-    return this.append(name, value, filename);
+  [dartx.appendBlob](...args) {
+    return this.append.apply(this, args);
   }
-  [dartx.delete](name) {
-    return this.delete(name);
+  [dartx.delete](...args) {
+    return this.delete.apply(this, args);
   }
-  [dartx.get](name) {
-    return this.get(name);
+  [dartx.get](...args) {
+    return this.get.apply(this, args);
   }
-  [dartx.getAll](name) {
-    return this.getAll(name);
+  [dartx.getAll](...args) {
+    return this.getAll.apply(this, args);
   }
-  [dartx.has](name) {
-    return this.has(name);
+  [dartx.has](...args) {
+    return this.has.apply(this, args);
   }
-  [dartx.set](name, value, filename) {
-    return this.set(name, value, filename);
+  [dartx.set](...args) {
+    return this.set.apply(this, args);
   }
 };
 dart.setSignature(html.FormData, {
@@ -58210,31 +58210,31 @@
   set [dartx.target](value) {
     this.target = value;
   }
-  [__getter__](name) {
-    return this.__getter__(name);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
   [dartx.requestAutocomplete](details) {
     let details_1 = html_common.convertDartToNative_Dictionary(details);
     this[_requestAutocomplete_1](details_1);
     return;
   }
-  [_requestAutocomplete_1](details) {
-    return this.requestAutocomplete(details);
+  [_requestAutocomplete_1](...args) {
+    return this.requestAutocomplete.apply(this, args);
   }
-  [dartx.reset]() {
-    return this.reset();
+  [dartx.reset](...args) {
+    return this.reset.apply(this, args);
   }
-  [dartx.submit]() {
-    return this.submit();
+  [dartx.submit](...args) {
+    return this.submit.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.FormElement, 'created');
@@ -58387,14 +58387,14 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.getRegisteredRegions]() {
-    return this.getRegisteredRegions();
+  [dartx.getRegisteredRegions](...args) {
+    return this.getRegisteredRegions.apply(this, args);
   }
-  [dartx.registerRegion](region) {
-    return this.registerRegion(region);
+  [dartx.registerRegion](...args) {
+    return this.registerRegion.apply(this, args);
   }
-  [dartx.unregisterRegion](regionId) {
-    return this.unregisterRegion(regionId);
+  [dartx.unregisterRegion](...args) {
+    return this.unregisterRegion.apply(this, args);
   }
 };
 dart.setSignature(html.Geofencing, {
@@ -58514,8 +58514,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [_clearWatch](watchID) {
-    return this.clearWatch(watchID);
+  [_clearWatch](...args) {
+    return this.clearWatch.apply(this, args);
   }
   [_getCurrentPosition](successCallback, errorCallback, options) {
     if (errorCallback === void 0) errorCallback = null;
@@ -58532,14 +58532,14 @@
     this[_getCurrentPosition_3](successCallback);
     return;
   }
-  [_getCurrentPosition_1](successCallback, errorCallback, options) {
-    return this.getCurrentPosition(successCallback, errorCallback, options);
+  [_getCurrentPosition_1](...args) {
+    return this.getCurrentPosition.apply(this, args);
   }
-  [_getCurrentPosition_2](successCallback, errorCallback) {
-    return this.getCurrentPosition(successCallback, errorCallback);
+  [_getCurrentPosition_2](...args) {
+    return this.getCurrentPosition.apply(this, args);
   }
-  [_getCurrentPosition_3](successCallback) {
-    return this.getCurrentPosition(successCallback);
+  [_getCurrentPosition_3](...args) {
+    return this.getCurrentPosition.apply(this, args);
   }
   [_watchPosition](successCallback, errorCallback, options) {
     if (errorCallback === void 0) errorCallback = null;
@@ -58553,14 +58553,14 @@
     }
     return this[_watchPosition_3](successCallback);
   }
-  [_watchPosition_1](successCallback, errorCallback, options) {
-    return this.watchPosition(successCallback, errorCallback, options);
+  [_watchPosition_1](...args) {
+    return this.watchPosition.apply(this, args);
   }
-  [_watchPosition_2](successCallback, errorCallback) {
-    return this.watchPosition(successCallback, errorCallback);
+  [_watchPosition_2](...args) {
+    return this.watchPosition.apply(this, args);
   }
-  [_watchPosition_3](successCallback) {
-    return this.watchPosition(successCallback);
+  [_watchPosition_3](...args) {
+    return this.watchPosition.apply(this, args);
   }
 };
 dart.setSignature(html.Geolocation, {
@@ -59231,8 +59231,8 @@
   get [dartx.oldUrl]() {
     return this.oldURL;
   }
-  [_initHashChangeEvent](type, canBubble, cancelable, oldURL, newURL) {
-    return this.initHashChangeEvent(type, canBubble, cancelable, oldURL, newURL);
+  [_initHashChangeEvent](...args) {
+    return this.initHashChangeEvent.apply(this, args);
   }
 };
 dart.setSignature(html.HashChangeEvent, {
@@ -59399,14 +59399,14 @@
   get [_get_state]() {
     return this.state;
   }
-  [dartx.back]() {
-    return this.back();
+  [dartx.back](...args) {
+    return this.back.apply(this, args);
   }
-  [dartx.forward]() {
-    return this.forward();
+  [dartx.forward](...args) {
+    return this.forward.apply(this, args);
   }
-  [dartx.go](delta) {
-    return this.go(delta);
+  [dartx.go](...args) {
+    return this.go.apply(this, args);
   }
   [dartx.pushState](data, title, url, options) {
     if (options === void 0) options = null;
@@ -59420,11 +59420,11 @@
     this[_pushState_2](data_1, title, url);
     return;
   }
-  [_pushState_1](data, title, url, options) {
-    return this.pushState(data, title, url, options);
+  [_pushState_1](...args) {
+    return this.pushState.apply(this, args);
   }
-  [_pushState_2](data, title, url) {
-    return this.pushState(data, title, url);
+  [_pushState_2](...args) {
+    return this.pushState.apply(this, args);
   }
   [dartx.replaceState](data, title, url, options) {
     if (options === void 0) options = null;
@@ -59438,11 +59438,11 @@
     this[_replaceState_2](data_1, title, url);
     return;
   }
-  [_replaceState_1](data, title, url, options) {
-    return this.replaceState(data, title, url, options);
+  [_replaceState_1](...args) {
+    return this.replaceState.apply(this, args);
   }
-  [_replaceState_2](data, title, url) {
-    return this.replaceState(data, title, url);
+  [_replaceState_2](...args) {
+    return this.replaceState.apply(this, args);
   }
 };
 html.History[dart.implements] = () => [html.HistoryBase];
@@ -59507,11 +59507,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.getEyeParameters](whichEye) {
-    return this.getEyeParameters(whichEye);
+  [dartx.getEyeParameters](...args) {
+    return this.getEyeParameters.apply(this, args);
   }
-  [dartx.setFieldOfView](leftFov, rightFov) {
-    return this.setFieldOfView(leftFov, rightFov);
+  [dartx.setFieldOfView](...args) {
+    return this.setFieldOfView.apply(this, args);
   }
 };
 dart.setSignature(html.HmdvrDevice, {
@@ -59576,11 +59576,11 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.namedItem](name) {
-    return this.namedItem(name);
+  [dartx.namedItem](...args) {
+    return this.namedItem.apply(this, args);
   }
 };
 html.HtmlCollection[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -59746,11 +59746,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.namedItem](name) {
-    return this.namedItem(name);
+  [dartx.namedItem](...args) {
+    return this.namedItem.apply(this, args);
   }
 };
 dart.setSignature(html.HtmlFormControlsCollection, {
@@ -59782,8 +59782,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [_item](index) {
-    return this.item(index);
+  [_item](...args) {
+    return this.item.apply(this, args);
   }
 };
 dart.setSignature(html.HtmlOptionsCollection, {
@@ -60036,8 +60036,8 @@
     }
     return headers;
   }
-  [dartx.open](method, url, opts) {
-    return this.open(method, url, opts);
+  [dartx.open](...args) {
+    return this.open.apply(this, args);
   }
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
@@ -60093,23 +60093,23 @@
   set [dartx.withCredentials](value) {
     this.withCredentials = value;
   }
-  [dartx.abort]() {
-    return this.abort();
+  [dartx.abort](...args) {
+    return this.abort.apply(this, args);
   }
-  [dartx.getAllResponseHeaders]() {
-    return this.getAllResponseHeaders();
+  [dartx.getAllResponseHeaders](...args) {
+    return this.getAllResponseHeaders.apply(this, args);
   }
-  [dartx.getResponseHeader](name) {
-    return this.getResponseHeader(name);
+  [dartx.getResponseHeader](...args) {
+    return this.getResponseHeader.apply(this, args);
   }
-  [dartx.overrideMimeType](mime) {
-    return this.overrideMimeType(mime);
+  [dartx.overrideMimeType](...args) {
+    return this.overrideMimeType.apply(this, args);
   }
-  [dartx.send](body_OR_data) {
-    return this.send(body_OR_data);
+  [dartx.send](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.setRequestHeader](name, value) {
-    return this.setRequestHeader(name, value);
+  [dartx.setRequestHeader](...args) {
+    return this.setRequestHeader.apply(this, args);
   }
   get [dartx.onReadyStateChange]() {
     return html.HttpRequest.readyStateChangeEvent.forTarget(this);
@@ -60511,8 +60511,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.inspect](objectId, hints) {
-    return this.inspect(objectId, hints);
+  [dartx.inspect](...args) {
+    return this.inspect.apply(this, args);
   }
 };
 dart.setSignature(html.InjectedScriptHost, {
@@ -60975,29 +60975,29 @@
   get [dartx.willValidate]() {
     return this.willValidate;
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
-  [dartx.select]() {
-    return this.select();
+  [dartx.select](...args) {
+    return this.select.apply(this, args);
   }
-  [dartx.setCustomValidity](error) {
-    return this.setCustomValidity(error);
+  [dartx.setCustomValidity](...args) {
+    return this.setCustomValidity.apply(this, args);
   }
-  [dartx.setRangeText](replacement, opts) {
-    return this.setRangeText(replacement, opts);
+  [dartx.setRangeText](...args) {
+    return this.setRangeText.apply(this, args);
   }
-  [dartx.setSelectionRange](start, end, direction) {
-    return this.setSelectionRange(start, end, direction);
+  [dartx.setSelectionRange](...args) {
+    return this.setSelectionRange.apply(this, args);
   }
-  [dartx.stepDown](n) {
-    return this.stepDown(n);
+  [dartx.stepDown](...args) {
+    return this.stepDown.apply(this, args);
   }
-  [dartx.stepUp](n) {
-    return this.stepUp(n);
+  [dartx.stepUp](...args) {
+    return this.stepUp.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.InputElement, 'created');
@@ -62292,8 +62292,8 @@
   get [dartx.shiftKey]() {
     return this.shiftKey;
   }
-  [dartx.getModifierState](keyArg) {
-    return this.getModifierState(keyArg);
+  [dartx.getModifierState](...args) {
+    return this.getModifierState.apply(this, args);
   }
 };
 dart.setSignature(html.KeyboardEvent, {
@@ -62468,14 +62468,14 @@
   get [dartx.willValidate]() {
     return this.willValidate;
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
-  [dartx.setCustomValidity](error) {
-    return this.setCustomValidity(error);
+  [dartx.setCustomValidity](...args) {
+    return this.setCustomValidity.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.KeygenElement, 'created');
@@ -62800,14 +62800,14 @@
   set [dartx.search](value) {
     this.search = value;
   }
-  [dartx.assign](url) {
-    return this.assign(url);
+  [dartx.assign](...args) {
+    return this.assign.apply(this, args);
   }
-  [dartx.reload]() {
-    return this.reload();
+  [dartx.reload](...args) {
+    return this.reload.apply(this, args);
   }
-  [dartx.replace](url) {
-    return this.replace(url);
+  [dartx.replace](...args) {
+    return this.replace.apply(this, args);
   }
   get [dartx.origin]() {
     if ("origin" in this) {
@@ -62954,14 +62954,14 @@
   set [dartx.volume](value) {
     this.volume = value;
   }
-  [dartx.pause]() {
-    return this.pause();
+  [dartx.pause](...args) {
+    return this.pause.apply(this, args);
   }
-  [dartx.play]() {
-    return this.play();
+  [dartx.play](...args) {
+    return this.play.apply(this, args);
   }
-  [dartx.unpause]() {
-    return this.unpause();
+  [dartx.unpause](...args) {
+    return this.unpause.apply(this, args);
   }
 };
 dart.setSignature(html.MediaController, {
@@ -63033,15 +63033,15 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.enumerateDevices]() {
-    return this.enumerateDevices();
+  [dartx.enumerateDevices](...args) {
+    return this.enumerateDevices.apply(this, args);
   }
   [dartx.getUserMedia](options) {
     let options_1 = html_common.convertDartToNative_Dictionary(options);
     return this[_getUserMedia_1](options_1);
   }
-  [_getUserMedia_1](options) {
-    return this.getUserMedia(options);
+  [_getUserMedia_1](...args) {
+    return this.getUserMedia.apply(this, args);
   }
 };
 dart.setSignature(html.MediaDevices, {
@@ -63303,20 +63303,20 @@
   get [dartx.sessionId]() {
     return this.sessionId;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
-  [dartx.generateRequest](initDataType, initData) {
-    return this.generateRequest(initDataType, initData);
+  [dartx.generateRequest](...args) {
+    return this.generateRequest.apply(this, args);
   }
-  [dartx.load](sessionId) {
-    return this.load(sessionId);
+  [dartx.load](...args) {
+    return this.load.apply(this, args);
   }
-  [dartx.remove]() {
-    return this.remove();
+  [dartx.remove](...args) {
+    return this.remove.apply(this, args);
   }
-  [_update](response) {
-    return this.update(response);
+  [_update](...args) {
+    return this.update.apply(this, args);
   }
 };
 dart.setSignature(html.MediaKeySession, {
@@ -63365,14 +63365,14 @@
   get [dartx.keySystem]() {
     return this.keySystem;
   }
-  [dartx.createMediaKeys]() {
-    return this.createMediaKeys();
+  [dartx.createMediaKeys](...args) {
+    return this.createMediaKeys.apply(this, args);
   }
   [dartx.getConfiguration]() {
     return html_common.convertNativeToDart_Dictionary(this[_getConfiguration_1]());
   }
-  [_getConfiguration_1]() {
-    return this.getConfiguration();
+  [_getConfiguration_1](...args) {
+    return this.getConfiguration.apply(this, args);
   }
 };
 dart.setSignature(html.MediaKeySystemAccess, {
@@ -63393,11 +63393,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [_createSession](sessionType) {
-    return this.createSession(sessionType);
+  [_createSession](...args) {
+    return this.createSession.apply(this, args);
   }
-  [dartx.setServerCertificate](serverCertificate) {
-    return this.setServerCertificate(serverCertificate);
+  [dartx.setServerCertificate](...args) {
+    return this.setServerCertificate.apply(this, args);
   }
 };
 dart.setSignature(html.MediaKeys, {
@@ -63428,14 +63428,14 @@
   set [dartx.mediaText](value) {
     this.mediaText = value;
   }
-  [dartx.appendMedium](medium) {
-    return this.appendMedium(medium);
+  [dartx.appendMedium](...args) {
+    return this.appendMedium.apply(this, args);
   }
-  [dartx.deleteMedium](medium) {
-    return this.deleteMedium(medium);
+  [dartx.deleteMedium](...args) {
+    return this.deleteMedium.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 dart.setSignature(html.MediaList, {
@@ -63468,11 +63468,11 @@
   get [dartx.media]() {
     return this.media;
   }
-  [dartx.addListener](listener) {
-    return this.addListener(listener);
+  [dartx.addListener](...args) {
+    return this.addListener.apply(this, args);
   }
-  [dartx.removeListener](listener) {
-    return this.removeListener(listener);
+  [dartx.removeListener](...args) {
+    return this.removeListener.apply(this, args);
   }
   get [dartx.onChange]() {
     return html.MediaQueryList.changeEvent.forTarget(this);
@@ -63556,11 +63556,11 @@
   static _create_1() {
     return new MediaSession();
   }
-  [dartx.activate]() {
-    return this.activate();
+  [dartx.activate](...args) {
+    return this.activate.apply(this, args);
   }
-  [dartx.deactivate]() {
-    return this.deactivate();
+  [dartx.deactivate](...args) {
+    return this.deactivate.apply(this, args);
   }
 };
 dart.setSignature(html.MediaSession, {
@@ -63613,14 +63613,14 @@
   get [dartx.sourceBuffers]() {
     return this.sourceBuffers;
   }
-  [dartx.addSourceBuffer](type) {
-    return this.addSourceBuffer(type);
+  [dartx.addSourceBuffer](...args) {
+    return this.addSourceBuffer.apply(this, args);
   }
-  [dartx.endOfStream](error) {
-    return this.endOfStream(error);
+  [dartx.endOfStream](...args) {
+    return this.endOfStream.apply(this, args);
   }
-  [dartx.removeSourceBuffer](buffer) {
-    return this.removeSourceBuffer(buffer);
+  [dartx.removeSourceBuffer](...args) {
+    return this.removeSourceBuffer.apply(this, args);
   }
 };
 dart.setSignature(html.MediaSource, {
@@ -63702,29 +63702,29 @@
   get [dartx.label]() {
     return this.label;
   }
-  [dartx.addTrack](track) {
-    return this.addTrack(track);
+  [dartx.addTrack](...args) {
+    return this.addTrack.apply(this, args);
   }
-  [dartx.clone]() {
-    return this.clone();
+  [dartx.clone](...args) {
+    return this.clone.apply(this, args);
   }
-  [dartx.getAudioTracks]() {
-    return this.getAudioTracks();
+  [dartx.getAudioTracks](...args) {
+    return this.getAudioTracks.apply(this, args);
   }
-  [dartx.getTrackById](trackId) {
-    return this.getTrackById(trackId);
+  [dartx.getTrackById](...args) {
+    return this.getTrackById.apply(this, args);
   }
-  [dartx.getTracks]() {
-    return this.getTracks();
+  [dartx.getTracks](...args) {
+    return this.getTracks.apply(this, args);
   }
-  [dartx.getVideoTracks]() {
-    return this.getVideoTracks();
+  [dartx.getVideoTracks](...args) {
+    return this.getVideoTracks.apply(this, args);
   }
-  [dartx.removeTrack](track) {
-    return this.removeTrack(track);
+  [dartx.removeTrack](...args) {
+    return this.removeTrack.apply(this, args);
   }
-  [dartx.stop]() {
-    return this.stop();
+  [dartx.stop](...args) {
+    return this.stop.apply(this, args);
   }
   get [dartx.onAddTrack]() {
     return html.MediaStream.addTrackEvent.forTarget(this);
@@ -63870,8 +63870,8 @@
   get [dartx.readyState]() {
     return this.readyState;
   }
-  [dartx.clone]() {
-    return this.clone();
+  [dartx.clone](...args) {
+    return this.clone.apply(this, args);
   }
   static getSources() {
     let completer = CompleterOfListOfSourceInfo().new();
@@ -63880,8 +63880,8 @@
     }, ListOfSourceInfoTovoid()));
     return completer.future;
   }
-  [dartx.stop]() {
-    return this.stop();
+  [dartx.stop](...args) {
+    return this.stop.apply(this, args);
   }
   get [dartx.onEnded]() {
     return html.MediaStreamTrack.endedEvent.forTarget(this);
@@ -64192,8 +64192,8 @@
   get [_get_source]() {
     return this.source;
   }
-  [_initMessageEvent](typeArg, canBubbleArg, cancelableArg, dataArg, originArg, lastEventIdArg, sourceArg, portsArg) {
-    return this.initMessageEvent(typeArg, canBubbleArg, cancelableArg, dataArg, originArg, lastEventIdArg, sourceArg, portsArg);
+  [_initMessageEvent](...args) {
+    return this.initMessageEvent.apply(this, args);
   }
 };
 dart.setSignature(html.MessageEvent, {
@@ -64229,8 +64229,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
   [dartx.postMessage](message, transfer) {
     if (transfer === void 0) transfer = null;
@@ -64243,14 +64243,14 @@
     this[_postMessage_2](message_1);
     return;
   }
-  [_postMessage_1](message, transfer) {
-    return this.postMessage(message, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message) {
-    return this.postMessage(message);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [dartx.start]() {
-    return this.start();
+  [dartx.start](...args) {
+    return this.start.apply(this, args);
   }
   get [dartx.onMessage]() {
     return html.MessagePort.messageEvent.forTarget(this);
@@ -64544,11 +64544,11 @@
   get [dartx.version]() {
     return this.version;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
-  [dartx.open]() {
-    return this.open();
+  [dartx.open](...args) {
+    return this.open.apply(this, args);
   }
 };
 dart.setSignature(html.MidiPort, {
@@ -64658,8 +64658,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.send](data, timestamp) {
-    return this.send(data, timestamp);
+  [dartx.send](...args) {
+    return this.send.apply(this, args);
   }
 };
 dart.setSignature(html.MidiOutput, {
@@ -64770,11 +64770,11 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.namedItem](name) {
-    return this.namedItem(name);
+  [dartx.namedItem](...args) {
+    return this.namedItem.apply(this, args);
   }
 };
 html.MimeTypeArray[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfMimeType()];
@@ -64981,8 +64981,8 @@
     this[_initMouseEvent_1](type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget_1);
     return;
   }
-  [_initMouseEvent_1](type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget) {
-    return this.initMouseEvent(type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget);
+  [_initMouseEvent_1](...args) {
+    return this.initMouseEvent.apply(this, args);
   }
   get [dartx.client]() {
     return new (PointOfnum())(this[_clientX], this[_clientY]);
@@ -65075,19 +65075,19 @@
   'observe'
 ]);
 html.MutationObserver = class MutationObserver extends _interceptors.Interceptor {
-  [dartx.disconnect]() {
-    return this.disconnect();
+  [dartx.disconnect](...args) {
+    return this.disconnect.apply(this, args);
   }
   [_observe](target, options) {
     let options_1 = html_common.convertDartToNative_Dictionary(options);
     this[_observe_1](target, options_1);
     return;
   }
-  [_observe_1](target, options) {
-    return this.observe(target, options);
+  [_observe_1](...args) {
+    return this.observe.apply(this, args);
   }
-  [dartx.takeRecords]() {
-    return this.takeRecords();
+  [dartx.takeRecords](...args) {
+    return this.takeRecords.apply(this, args);
   }
   static get supported() {
     return !!(window.MutationObserver || window.WebKitMutationObserver);
@@ -65125,8 +65125,8 @@
   static _fixupList(list) {
     return list;
   }
-  [_call](target, options) {
-    return this.observe(target, options);
+  [_call](...args) {
+    return this.observe.apply(this, args);
   }
   static new(callback) {
     0;
@@ -65280,8 +65280,8 @@
       this.getUserMedia = this.getUserMedia || this.webkitGetUserMedia || this.mozGetUserMedia || this.msGetUserMedia;
     }
   }
-  [_getUserMedia](options, success, error) {
-    return this.getUserMedia(options, success, error);
+  [_getUserMedia](...args) {
+    return this.getUserMedia.apply(this, args);
   }
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
@@ -65340,17 +65340,17 @@
   get [dartx.temporaryStorage]() {
     return this.webkitTemporaryStorage;
   }
-  [dartx.getBattery]() {
-    return this.getBattery();
+  [dartx.getBattery](...args) {
+    return this.getBattery.apply(this, args);
   }
-  [dartx.getGamepads]() {
-    return this.getGamepads();
+  [dartx.getGamepads](...args) {
+    return this.getGamepads.apply(this, args);
   }
-  [dartx.getVRDevices]() {
-    return this.getVRDevices();
+  [dartx.getVRDevices](...args) {
+    return this.getVRDevices.apply(this, args);
   }
-  [dartx.registerProtocolHandler](scheme, url, title) {
-    return this.registerProtocolHandler(scheme, url, title);
+  [dartx.registerProtocolHandler](...args) {
+    return this.registerProtocolHandler.apply(this, args);
   }
   [dartx.requestMidiAccess](options) {
     if (options === void 0) options = null;
@@ -65360,17 +65360,17 @@
     }
     return this[_requestMidiAccess_2]();
   }
-  [_requestMidiAccess_1](options) {
-    return this.requestMIDIAccess(options);
+  [_requestMidiAccess_1](...args) {
+    return this.requestMIDIAccess.apply(this, args);
   }
-  [_requestMidiAccess_2]() {
-    return this.requestMIDIAccess();
+  [_requestMidiAccess_2](...args) {
+    return this.requestMIDIAccess.apply(this, args);
   }
-  [dartx.requestMediaKeySystemAccess](keySystem, supportedConfigurations) {
-    return this.requestMediaKeySystemAccess(keySystem, supportedConfigurations);
+  [dartx.requestMediaKeySystemAccess](...args) {
+    return this.requestMediaKeySystemAccess.apply(this, args);
   }
-  [dartx.sendBeacon](url, data) {
-    return this.sendBeacon(url, data);
+  [dartx.sendBeacon](...args) {
+    return this.sendBeacon.apply(this, args);
   }
   get [dartx.hardwareConcurrency]() {
     return this.hardwareConcurrency;
@@ -65405,8 +65405,8 @@
   get [dartx.cookieEnabled]() {
     return this.cookieEnabled;
   }
-  [dartx.getStorageUpdates]() {
-    return this.getStorageUpdates();
+  [dartx.getStorageUpdates](...args) {
+    return this.getStorageUpdates.apply(this, args);
   }
 };
 html.Navigator[dart.implements] = () => [html.NavigatorStorageUtils, html.NavigatorCpu, html.NavigatorLanguage, html.NavigatorOnLine, html.NavigatorID];
@@ -65627,8 +65627,8 @@
   get [dartx.cookieEnabled]() {
     return this.cookieEnabled;
   }
-  [dartx.getStorageUpdates]() {
-    return this.getStorageUpdates();
+  [dartx.getStorageUpdates](...args) {
+    return this.getStorageUpdates.apply(this, args);
   }
 };
 dart.setSignature(html.NavigatorStorageUtils, {
@@ -65935,14 +65935,14 @@
   get [dartx.whatToShow]() {
     return this.whatToShow;
   }
-  [dartx.detach]() {
-    return this.detach();
+  [dartx.detach](...args) {
+    return this.detach.apply(this, args);
   }
-  [dartx.nextNode]() {
-    return this.nextNode();
+  [dartx.nextNode](...args) {
+    return this.nextNode.apply(this, args);
   }
-  [dartx.previousNode]() {
-    return this.previousNode();
+  [dartx.previousNode](...args) {
+    return this.previousNode.apply(this, args);
   }
 };
 dart.setSignature(html.NodeIterator, {
@@ -66015,8 +66015,8 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [_item](index) {
-    return this.item(index);
+  [_item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html.NodeList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -66068,8 +66068,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.getElementById](elementId) {
-    return this.getElementById(elementId);
+  [dartx.getElementById](...args) {
+    return this.getElementById.apply(this, args);
   }
 };
 dart.setSignature(html.NonElementParentNode, {
@@ -66159,8 +66159,8 @@
   get [dartx.vibrate]() {
     return this.vibrate;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
   static requestPermission() {
     let completer = CompleterOfString().new();
@@ -66413,20 +66413,20 @@
   get [dartx.willValidate]() {
     return this.willValidate;
   }
-  [__getter__](index_OR_name) {
-    return this.__getter__(index_OR_name);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [__setter__](index_OR_name, value) {
-    return this.__setter__(index_OR_name, value);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
-  [dartx.setCustomValidity](error) {
-    return this.setCustomValidity(error);
+  [dartx.setCustomValidity](...args) {
+    return this.setCustomValidity.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.ObjectElement, 'created');
@@ -66700,14 +66700,14 @@
   get [dartx.willValidate]() {
     return this.willValidate;
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
-  [dartx.setCustomValidity](error) {
-    return this.setCustomValidity(error);
+  [dartx.setCustomValidity](...args) {
+    return this.setCustomValidity.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.OutputElement, 'created');
@@ -66941,35 +66941,35 @@
   static _create_3(path_OR_text) {
     return new Path2D(path_OR_text);
   }
-  [dartx.addPath](path, transform) {
-    return this.addPath(path, transform);
+  [dartx.addPath](...args) {
+    return this.addPath.apply(this, args);
   }
-  [dartx.arc](x, y, radius, startAngle, endAngle, anticlockwise) {
-    return this.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+  [dartx.arc](...args) {
+    return this.arc.apply(this, args);
   }
-  [dartx.arcTo](x1, y1, x2, y2, radius) {
-    return this.arcTo(x1, y1, x2, y2, radius);
+  [dartx.arcTo](...args) {
+    return this.arcTo.apply(this, args);
   }
-  [dartx.bezierCurveTo](cp1x, cp1y, cp2x, cp2y, x, y) {
-    return this.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);
+  [dartx.bezierCurveTo](...args) {
+    return this.bezierCurveTo.apply(this, args);
   }
-  [dartx.closePath]() {
-    return this.closePath();
+  [dartx.closePath](...args) {
+    return this.closePath.apply(this, args);
   }
-  [dartx.ellipse](x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
-    return this.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);
+  [dartx.ellipse](...args) {
+    return this.ellipse.apply(this, args);
   }
-  [dartx.lineTo](x, y) {
-    return this.lineTo(x, y);
+  [dartx.lineTo](...args) {
+    return this.lineTo.apply(this, args);
   }
-  [dartx.moveTo](x, y) {
-    return this.moveTo(x, y);
+  [dartx.moveTo](...args) {
+    return this.moveTo.apply(this, args);
   }
-  [dartx.quadraticCurveTo](cpx, cpy, x, y) {
-    return this.quadraticCurveTo(cpx, cpy, x, y);
+  [dartx.quadraticCurveTo](...args) {
+    return this.quadraticCurveTo.apply(this, args);
   }
-  [dartx.rect](x, y, width, height) {
-    return this.rect(x, y, width, height);
+  [dartx.rect](...args) {
+    return this.rect.apply(this, args);
   }
 };
 html.Path2D[dart.implements] = () => [html._CanvasPathMethods];
@@ -67032,41 +67032,41 @@
   get [dartx.timing]() {
     return this.timing;
   }
-  [dartx.clearFrameTimings]() {
-    return this.clearFrameTimings();
+  [dartx.clearFrameTimings](...args) {
+    return this.clearFrameTimings.apply(this, args);
   }
-  [dartx.clearMarks](markName) {
-    return this.clearMarks(markName);
+  [dartx.clearMarks](...args) {
+    return this.clearMarks.apply(this, args);
   }
-  [dartx.clearMeasures](measureName) {
-    return this.clearMeasures(measureName);
+  [dartx.clearMeasures](...args) {
+    return this.clearMeasures.apply(this, args);
   }
-  [dartx.getEntries]() {
-    return this.getEntries();
+  [dartx.getEntries](...args) {
+    return this.getEntries.apply(this, args);
   }
-  [dartx.getEntriesByName](name, entryType) {
-    return this.getEntriesByName(name, entryType);
+  [dartx.getEntriesByName](...args) {
+    return this.getEntriesByName.apply(this, args);
   }
-  [dartx.getEntriesByType](entryType) {
-    return this.getEntriesByType(entryType);
+  [dartx.getEntriesByType](...args) {
+    return this.getEntriesByType.apply(this, args);
   }
-  [dartx.mark](markName) {
-    return this.mark(markName);
+  [dartx.mark](...args) {
+    return this.mark.apply(this, args);
   }
-  [dartx.measure](measureName, startMark, endMark) {
-    return this.measure(measureName, startMark, endMark);
+  [dartx.measure](...args) {
+    return this.measure.apply(this, args);
   }
-  [dartx.now]() {
-    return this.now();
+  [dartx.now](...args) {
+    return this.now.apply(this, args);
   }
-  [dartx.setFrameTimingBufferSize](maxSize) {
-    return this.setFrameTimingBufferSize(maxSize);
+  [dartx.setFrameTimingBufferSize](...args) {
+    return this.setFrameTimingBufferSize.apply(this, args);
   }
-  [dartx.clearResourceTimings]() {
-    return this.webkitClearResourceTimings();
+  [dartx.clearResourceTimings](...args) {
+    return this.webkitClearResourceTimings.apply(this, args);
   }
-  [dartx.setResourceTimingBufferSize](maxSize) {
-    return this.webkitSetResourceTimingBufferSize(maxSize);
+  [dartx.setResourceTimingBufferSize](...args) {
+    return this.webkitSetResourceTimingBufferSize.apply(this, args);
   }
   get [dartx.onResourceTimingBufferFull]() {
     return html.Performance.resourceTimingBufferFullEvent.forTarget(this);
@@ -67459,14 +67459,14 @@
   get [dartx.minPossiblePeriod]() {
     return this.minPossiblePeriod;
   }
-  [dartx.getRegistration](tag) {
-    return this.getRegistration(tag);
+  [dartx.getRegistration](...args) {
+    return this.getRegistration.apply(this, args);
   }
-  [dartx.getRegistrations]() {
-    return this.getRegistrations();
+  [dartx.getRegistrations](...args) {
+    return this.getRegistrations.apply(this, args);
   }
-  [dartx.permissionState]() {
-    return this.permissionState();
+  [dartx.permissionState](...args) {
+    return this.permissionState.apply(this, args);
   }
   [dartx.register](options) {
     if (options === void 0) options = null;
@@ -67476,11 +67476,11 @@
     }
     return this[_register_2]();
   }
-  [_register_1](options) {
-    return this.register(options);
+  [_register_1](...args) {
+    return this.register.apply(this, args);
   }
-  [_register_2]() {
-    return this.register();
+  [_register_2](...args) {
+    return this.register.apply(this, args);
   }
 };
 dart.setSignature(html.PeriodicSyncManager, {
@@ -67519,8 +67519,8 @@
   get [dartx.tag]() {
     return this.tag;
   }
-  [dartx.unregister]() {
-    return this.unregister();
+  [dartx.unregister](...args) {
+    return this.unregister.apply(this, args);
   }
 };
 dart.setSignature(html.PeriodicSyncRegistration, {
@@ -67575,8 +67575,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.query](permission) {
-    return this.query(permission);
+  [dartx.query](...args) {
+    return this.query.apply(this, args);
   }
 };
 dart.setSignature(html.Permissions, {
@@ -67624,11 +67624,11 @@
   get [dartx.name]() {
     return this.name;
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.namedItem](name) {
-    return this.namedItem(name);
+  [dartx.namedItem](...args) {
+    return this.namedItem.apply(this, args);
   }
 };
 dart.setSignature(html.Plugin, {
@@ -67700,14 +67700,14 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.namedItem](name) {
-    return this.namedItem(name);
+  [dartx.namedItem](...args) {
+    return this.namedItem.apply(this, args);
   }
-  [dartx.refresh](reload) {
-    return this.refresh(reload);
+  [dartx.refresh](...args) {
+    return this.refresh.apply(this, args);
   }
 };
 html.PluginArray[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfPlugin()];
@@ -67756,8 +67756,8 @@
   set [dartx.message](value) {
     this.message = value;
   }
-  [dartx.createdCallback]() {
-    return this.createdCallback();
+  [dartx.createdCallback](...args) {
+    return this.createdCallback.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.PluginPlaceholderElement, 'created');
@@ -67932,14 +67932,14 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.getImmediateState]() {
-    return this.getImmediateState();
+  [dartx.getImmediateState](...args) {
+    return this.getImmediateState.apply(this, args);
   }
-  [dartx.getState]() {
-    return this.getState();
+  [dartx.getState](...args) {
+    return this.getState.apply(this, args);
   }
-  [dartx.resetSensor]() {
-    return this.resetSensor();
+  [dartx.resetSensor](...args) {
+    return this.resetSensor.apply(this, args);
   }
 };
 dart.setSignature(html.PositionSensorVRDevice, {
@@ -67984,14 +67984,14 @@
   get [dartx.session]() {
     return this.session;
   }
-  [dartx.getAvailability](url) {
-    return this.getAvailability(url);
+  [dartx.getAvailability](...args) {
+    return this.getAvailability.apply(this, args);
   }
-  [dartx.joinSession](url, presentationId) {
-    return this.joinSession(url, presentationId);
+  [dartx.joinSession](...args) {
+    return this.joinSession.apply(this, args);
   }
-  [dartx.startSession](url) {
-    return this.startSession(url);
+  [dartx.startSession](...args) {
+    return this.startSession.apply(this, args);
   }
 };
 dart.setSignature(html.Presentation, {
@@ -68055,11 +68055,11 @@
   get [dartx.state]() {
     return this.state;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
-  [dartx.send](data_OR_message) {
-    return this.send(data_OR_message);
+  [dartx.send](...args) {
+    return this.send.apply(this, args);
   }
   get [dartx.onMessage]() {
     return html.PresentationSession.messageEvent.forTarget(this);
@@ -68312,8 +68312,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.getSubscription]() {
-    return this.getSubscription();
+  [dartx.getSubscription](...args) {
+    return this.getSubscription.apply(this, args);
   }
   [dartx.permissionState](options) {
     if (options === void 0) options = null;
@@ -68323,11 +68323,11 @@
     }
     return this[_permissionState_2]();
   }
-  [_permissionState_1](options) {
-    return this.permissionState(options);
+  [_permissionState_1](...args) {
+    return this.permissionState.apply(this, args);
   }
-  [_permissionState_2]() {
-    return this.permissionState();
+  [_permissionState_2](...args) {
+    return this.permissionState.apply(this, args);
   }
   [dartx.subscribe](options) {
     if (options === void 0) options = null;
@@ -68337,11 +68337,11 @@
     }
     return this[_subscribe_2]();
   }
-  [_subscribe_1](options) {
-    return this.subscribe(options);
+  [_subscribe_1](...args) {
+    return this.subscribe.apply(this, args);
   }
-  [_subscribe_2]() {
-    return this.subscribe();
+  [_subscribe_2](...args) {
+    return this.subscribe.apply(this, args);
   }
 };
 dart.setSignature(html.PushManager, {
@@ -68373,17 +68373,17 @@
   static _create_1(message) {
     return new PushMessageData(message);
   }
-  [dartx.arrayBuffer]() {
-    return this.arrayBuffer();
+  [dartx.arrayBuffer](...args) {
+    return this.arrayBuffer.apply(this, args);
   }
-  [dartx.blob]() {
-    return this.blob();
+  [dartx.blob](...args) {
+    return this.blob.apply(this, args);
   }
-  [dartx.json]() {
-    return this.json();
+  [dartx.json](...args) {
+    return this.json.apply(this, args);
   }
-  [dartx.text]() {
-    return this.text();
+  [dartx.text](...args) {
+    return this.text.apply(this, args);
   }
 };
 dart.setSignature(html.PushMessageData, {
@@ -68412,8 +68412,8 @@
   get [dartx.endpoint]() {
     return this.endpoint;
   }
-  [dartx.unsubscribe]() {
-    return this.unsubscribe();
+  [dartx.unsubscribe](...args) {
+    return this.unsubscribe.apply(this, args);
   }
 };
 dart.setSignature(html.PushSubscription, {
@@ -68515,74 +68515,74 @@
   get [dartx.startOffset]() {
     return this.startOffset;
   }
-  [dartx.cloneContents]() {
-    return this.cloneContents();
+  [dartx.cloneContents](...args) {
+    return this.cloneContents.apply(this, args);
   }
-  [dartx.cloneRange]() {
-    return this.cloneRange();
+  [dartx.cloneRange](...args) {
+    return this.cloneRange.apply(this, args);
   }
-  [dartx.collapse](toStart) {
-    return this.collapse(toStart);
+  [dartx.collapse](...args) {
+    return this.collapse.apply(this, args);
   }
-  [dartx.compareBoundaryPoints](how, sourceRange) {
-    return this.compareBoundaryPoints(how, sourceRange);
+  [dartx.compareBoundaryPoints](...args) {
+    return this.compareBoundaryPoints.apply(this, args);
   }
-  [dartx.comparePoint](node, offset) {
-    return this.comparePoint(node, offset);
+  [dartx.comparePoint](...args) {
+    return this.comparePoint.apply(this, args);
   }
-  [dartx.createContextualFragment](fragment) {
-    return this.createContextualFragment(fragment);
+  [dartx.createContextualFragment](...args) {
+    return this.createContextualFragment.apply(this, args);
   }
-  [dartx.deleteContents]() {
-    return this.deleteContents();
+  [dartx.deleteContents](...args) {
+    return this.deleteContents.apply(this, args);
   }
-  [dartx.detach]() {
-    return this.detach();
+  [dartx.detach](...args) {
+    return this.detach.apply(this, args);
   }
-  [dartx.expand](unit) {
-    return this.expand(unit);
+  [dartx.expand](...args) {
+    return this.expand.apply(this, args);
   }
-  [dartx.extractContents]() {
-    return this.extractContents();
+  [dartx.extractContents](...args) {
+    return this.extractContents.apply(this, args);
   }
-  [dartx.getBoundingClientRect]() {
-    return this.getBoundingClientRect();
+  [dartx.getBoundingClientRect](...args) {
+    return this.getBoundingClientRect.apply(this, args);
   }
-  [dartx.getClientRects]() {
-    return this.getClientRects();
+  [dartx.getClientRects](...args) {
+    return this.getClientRects.apply(this, args);
   }
-  [dartx.insertNode](node) {
-    return this.insertNode(node);
+  [dartx.insertNode](...args) {
+    return this.insertNode.apply(this, args);
   }
-  [dartx.isPointInRange](node, offset) {
-    return this.isPointInRange(node, offset);
+  [dartx.isPointInRange](...args) {
+    return this.isPointInRange.apply(this, args);
   }
-  [dartx.selectNode](node) {
-    return this.selectNode(node);
+  [dartx.selectNode](...args) {
+    return this.selectNode.apply(this, args);
   }
-  [dartx.selectNodeContents](node) {
-    return this.selectNodeContents(node);
+  [dartx.selectNodeContents](...args) {
+    return this.selectNodeContents.apply(this, args);
   }
-  [dartx.setEnd](node, offset) {
-    return this.setEnd(node, offset);
+  [dartx.setEnd](...args) {
+    return this.setEnd.apply(this, args);
   }
-  [dartx.setEndAfter](node) {
-    return this.setEndAfter(node);
+  [dartx.setEndAfter](...args) {
+    return this.setEndAfter.apply(this, args);
   }
-  [dartx.setEndBefore](node) {
-    return this.setEndBefore(node);
+  [dartx.setEndBefore](...args) {
+    return this.setEndBefore.apply(this, args);
   }
-  [dartx.setStart](node, offset) {
-    return this.setStart(node, offset);
+  [dartx.setStart](...args) {
+    return this.setStart.apply(this, args);
   }
-  [dartx.setStartAfter](node) {
-    return this.setStartAfter(node);
+  [dartx.setStartAfter](...args) {
+    return this.setStartAfter.apply(this, args);
   }
-  [dartx.setStartBefore](node) {
-    return this.setStartBefore(node);
+  [dartx.setStartBefore](...args) {
+    return this.setStartBefore.apply(this, args);
   }
-  [dartx.surroundContents](newParent) {
-    return this.surroundContents(newParent);
+  [dartx.surroundContents](...args) {
+    return this.surroundContents.apply(this, args);
   }
   static get supportsCreateContextualFragment() {
     return "createContextualFragment" in window.Range.prototype;
@@ -68648,11 +68648,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.cancel](reason) {
-    return this.cancel(reason);
+  [dartx.cancel](...args) {
+    return this.cancel.apply(this, args);
   }
-  [dartx.getReader]() {
-    return this.getReader();
+  [dartx.getReader](...args) {
+    return this.getReader.apply(this, args);
   }
 };
 dart.setSignature(html.ReadableByteStream, {
@@ -68676,14 +68676,14 @@
   get [dartx.closed]() {
     return this.closed;
   }
-  [dartx.cancel](reason) {
-    return this.cancel(reason);
+  [dartx.cancel](...args) {
+    return this.cancel.apply(this, args);
   }
-  [dartx.read]() {
-    return this.read();
+  [dartx.read](...args) {
+    return this.read.apply(this, args);
   }
-  [dartx.releaseLock]() {
-    return this.releaseLock();
+  [dartx.releaseLock](...args) {
+    return this.releaseLock.apply(this, args);
   }
 };
 dart.setSignature(html.ReadableByteStreamReader, {
@@ -68704,11 +68704,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.cancel](reason) {
-    return this.cancel(reason);
+  [dartx.cancel](...args) {
+    return this.cancel.apply(this, args);
   }
-  [dartx.getReader]() {
-    return this.getReader();
+  [dartx.getReader](...args) {
+    return this.getReader.apply(this, args);
   }
 };
 dart.setSignature(html.ReadableStream, {
@@ -68732,14 +68732,14 @@
   get [dartx.closed]() {
     return this.closed;
   }
-  [dartx.cancel](reason) {
-    return this.cancel(reason);
+  [dartx.cancel](...args) {
+    return this.cancel.apply(this, args);
   }
-  [dartx.read]() {
-    return this.read();
+  [dartx.read](...args) {
+    return this.read.apply(this, args);
   }
-  [dartx.releaseLock]() {
-    return this.releaseLock();
+  [dartx.releaseLock](...args) {
+    return this.releaseLock.apply(this, args);
   }
 };
 dart.setSignature(html.ReadableStreamReader, {
@@ -68874,23 +68874,23 @@
   get [dartx.reliable]() {
     return this.reliable;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
-  [dartx.send](data) {
-    return this.send(data);
+  [dartx.send](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.sendBlob](data) {
-    return this.send(data);
+  [dartx.sendBlob](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.sendByteBuffer](data) {
-    return this.send(data);
+  [dartx.sendByteBuffer](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.sendString](data) {
-    return this.send(data);
+  [dartx.sendString](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.sendTypedData](data) {
-    return this.send(data);
+  [dartx.sendTypedData](...args) {
+    return this.send.apply(this, args);
   }
   get [dartx.onClose]() {
     return html.RtcDataChannel.closeEvent.forTarget(this);
@@ -69001,8 +69001,8 @@
   get [dartx.track]() {
     return this.track;
   }
-  [dartx.insertDtmf](tones, duration, interToneGap) {
-    return this.insertDTMF(tones, duration, interToneGap);
+  [dartx.insertDtmf](...args) {
+    return this.insertDTMF.apply(this, args);
   }
   get [dartx.onToneChange]() {
     return html.RtcDtmfSender.toneChangeEvent.forTarget(this);
@@ -69227,8 +69227,8 @@
   get [dartx.signalingState]() {
     return this.signalingState;
   }
-  [dartx.addIceCandidate](candidate, successCallback, failureCallback) {
-    return this.addIceCandidate(candidate, successCallback, failureCallback);
+  [dartx.addIceCandidate](...args) {
+    return this.addIceCandidate.apply(this, args);
   }
   [dartx.addStream](stream, mediaConstraints) {
     if (mediaConstraints === void 0) mediaConstraints = null;
@@ -69240,14 +69240,14 @@
     this[_addStream_2](stream);
     return;
   }
-  [_addStream_1](stream, mediaConstraints) {
-    return this.addStream(stream, mediaConstraints);
+  [_addStream_1](...args) {
+    return this.addStream.apply(this, args);
   }
-  [_addStream_2](stream) {
-    return this.addStream(stream);
+  [_addStream_2](...args) {
+    return this.addStream.apply(this, args);
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
   [_createAnswer](successCallback, failureCallback, mediaConstraints) {
     if (failureCallback === void 0) failureCallback = null;
@@ -69260,14 +69260,14 @@
     this[_createAnswer_2](successCallback, failureCallback);
     return;
   }
-  [_createAnswer_1](successCallback, failureCallback, mediaConstraints) {
-    return this.createAnswer(successCallback, failureCallback, mediaConstraints);
+  [_createAnswer_1](...args) {
+    return this.createAnswer.apply(this, args);
   }
-  [_createAnswer_2](successCallback, failureCallback) {
-    return this.createAnswer(successCallback, failureCallback);
+  [_createAnswer_2](...args) {
+    return this.createAnswer.apply(this, args);
   }
-  [dartx.createDtmfSender](track) {
-    return this.createDTMFSender(track);
+  [dartx.createDtmfSender](...args) {
+    return this.createDTMFSender.apply(this, args);
   }
   [dartx.createDataChannel](label, options) {
     if (options === void 0) options = null;
@@ -69277,11 +69277,11 @@
     }
     return this[_createDataChannel_2](label);
   }
-  [_createDataChannel_1](label, options) {
-    return this.createDataChannel(label, options);
+  [_createDataChannel_1](...args) {
+    return this.createDataChannel.apply(this, args);
   }
-  [_createDataChannel_2](label) {
-    return this.createDataChannel(label);
+  [_createDataChannel_2](...args) {
+    return this.createDataChannel.apply(this, args);
   }
   [_createOffer](successCallback, failureCallback, rtcOfferOptions) {
     if (failureCallback === void 0) failureCallback = null;
@@ -69294,29 +69294,29 @@
     this[_createOffer_2](successCallback, failureCallback);
     return;
   }
-  [_createOffer_1](successCallback, failureCallback, rtcOfferOptions) {
-    return this.createOffer(successCallback, failureCallback, rtcOfferOptions);
+  [_createOffer_1](...args) {
+    return this.createOffer.apply(this, args);
   }
-  [_createOffer_2](successCallback, failureCallback) {
-    return this.createOffer(successCallback, failureCallback);
+  [_createOffer_2](...args) {
+    return this.createOffer.apply(this, args);
   }
-  [dartx.getLocalStreams]() {
-    return this.getLocalStreams();
+  [dartx.getLocalStreams](...args) {
+    return this.getLocalStreams.apply(this, args);
   }
-  [dartx.getRemoteStreams]() {
-    return this.getRemoteStreams();
+  [dartx.getRemoteStreams](...args) {
+    return this.getRemoteStreams.apply(this, args);
   }
-  [_getStats](successCallback, selector) {
-    return this.getStats(successCallback, selector);
+  [_getStats](...args) {
+    return this.getStats.apply(this, args);
   }
-  [dartx.getStreamById](streamId) {
-    return this.getStreamById(streamId);
+  [dartx.getStreamById](...args) {
+    return this.getStreamById.apply(this, args);
   }
-  [dartx.removeStream](stream) {
-    return this.removeStream(stream);
+  [dartx.removeStream](...args) {
+    return this.removeStream.apply(this, args);
   }
-  [_setLocalDescription](description, successCallback, failureCallback) {
-    return this.setLocalDescription(description, successCallback, failureCallback);
+  [_setLocalDescription](...args) {
+    return this.setLocalDescription.apply(this, args);
   }
   [dartx.setLocalDescription](description) {
     let completer = async.Completer.new();
@@ -69327,8 +69327,8 @@
     }, StringTovoid()));
     return completer.future;
   }
-  [_setRemoteDescription](description, successCallback, failureCallback) {
-    return this.setRemoteDescription(description, successCallback, failureCallback);
+  [_setRemoteDescription](...args) {
+    return this.setRemoteDescription.apply(this, args);
   }
   [dartx.setRemoteDescription](description) {
     let completer = async.Completer.new();
@@ -69356,14 +69356,14 @@
     this[_updateIce_3]();
     return;
   }
-  [_updateIce_1](configuration, mediaConstraints) {
-    return this.updateIce(configuration, mediaConstraints);
+  [_updateIce_1](...args) {
+    return this.updateIce.apply(this, args);
   }
-  [_updateIce_2](configuration) {
-    return this.updateIce(configuration);
+  [_updateIce_2](...args) {
+    return this.updateIce.apply(this, args);
   }
-  [_updateIce_3]() {
-    return this.updateIce();
+  [_updateIce_3](...args) {
+    return this.updateIce.apply(this, args);
   }
   get [dartx.onAddStream]() {
     return html.RtcPeerConnection.addStreamEvent.forTarget(this);
@@ -69538,11 +69538,11 @@
   get [dartx.type]() {
     return this.type;
   }
-  [dartx.names]() {
-    return this.names();
+  [dartx.names](...args) {
+    return this.names.apply(this, args);
   }
-  [dartx.stat](name) {
-    return this.stat(name);
+  [dartx.stat](...args) {
+    return this.stat.apply(this, args);
   }
 };
 dart.setSignature(html.RtcStatsReport, {
@@ -69567,11 +69567,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.namedItem](name) {
-    return this.namedItem(name);
+  [dartx.namedItem](...args) {
+    return this.namedItem.apply(this, args);
   }
-  [dartx.result]() {
-    return this.result();
+  [dartx.result](...args) {
+    return this.result.apply(this, args);
   }
 };
 dart.setSignature(html.RtcStatsResponse, {
@@ -69662,11 +69662,11 @@
   get [dartx.type]() {
     return this.type;
   }
-  [dartx.lock](orientation) {
-    return this.lock(orientation);
+  [dartx.lock](...args) {
+    return this.lock.apply(this, args);
   }
-  [dartx.unlock]() {
-    return this.unlock();
+  [dartx.unlock](...args) {
+    return this.unlock.apply(this, args);
   }
   get [dartx.onChange]() {
     return html.ScreenOrientation.changeEvent.forTarget(this);
@@ -69896,8 +69896,8 @@
   get [dartx.velocityY]() {
     return this.velocityY;
   }
-  [dartx.consumeDelta](x, y) {
-    return this.consumeDelta(x, y);
+  [dartx.consumeDelta](...args) {
+    return this.consumeDelta.apply(this, args);
   }
 };
 dart.setSignature(html.ScrollState, {
@@ -70139,26 +70139,26 @@
   get [dartx.willValidate]() {
     return this.willValidate;
   }
-  [__setter__](index, option) {
-    return this.__setter__(index, option);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [dartx.add](element, before) {
-    return this.add(element, before);
+  [dartx.add](...args) {
+    return this.add.apply(this, args);
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.namedItem](name) {
-    return this.namedItem(name);
+  [dartx.namedItem](...args) {
+    return this.namedItem.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
-  [dartx.setCustomValidity](error) {
-    return this.setCustomValidity(error);
+  [dartx.setCustomValidity](...args) {
+    return this.setCustomValidity.apply(this, args);
   }
   get [dartx.options]() {
     let options = ListOfOptionElement().from(this[dartx.querySelectorAll](html.Element)('option'));
@@ -70276,47 +70276,47 @@
   get [dartx.type]() {
     return this.type;
   }
-  [dartx.addRange](range) {
-    return this.addRange(range);
+  [dartx.addRange](...args) {
+    return this.addRange.apply(this, args);
   }
-  [dartx.collapse](node, offset) {
-    return this.collapse(node, offset);
+  [dartx.collapse](...args) {
+    return this.collapse.apply(this, args);
   }
-  [dartx.collapseToEnd]() {
-    return this.collapseToEnd();
+  [dartx.collapseToEnd](...args) {
+    return this.collapseToEnd.apply(this, args);
   }
-  [dartx.collapseToStart]() {
-    return this.collapseToStart();
+  [dartx.collapseToStart](...args) {
+    return this.collapseToStart.apply(this, args);
   }
-  [dartx.containsNode](node, allowPartialContainment) {
-    return this.containsNode(node, allowPartialContainment);
+  [dartx.containsNode](...args) {
+    return this.containsNode.apply(this, args);
   }
-  [dartx.deleteFromDocument]() {
-    return this.deleteFromDocument();
+  [dartx.deleteFromDocument](...args) {
+    return this.deleteFromDocument.apply(this, args);
   }
-  [dartx.empty]() {
-    return this.empty();
+  [dartx.empty](...args) {
+    return this.empty.apply(this, args);
   }
-  [dartx.extend](node, offset) {
-    return this.extend(node, offset);
+  [dartx.extend](...args) {
+    return this.extend.apply(this, args);
   }
-  [dartx.getRangeAt](index) {
-    return this.getRangeAt(index);
+  [dartx.getRangeAt](...args) {
+    return this.getRangeAt.apply(this, args);
   }
-  [dartx.modify](alter, direction, granularity) {
-    return this.modify(alter, direction, granularity);
+  [dartx.modify](...args) {
+    return this.modify.apply(this, args);
   }
-  [dartx.removeAllRanges]() {
-    return this.removeAllRanges();
+  [dartx.removeAllRanges](...args) {
+    return this.removeAllRanges.apply(this, args);
   }
-  [dartx.selectAllChildren](node) {
-    return this.selectAllChildren(node);
+  [dartx.selectAllChildren](...args) {
+    return this.selectAllChildren.apply(this, args);
   }
-  [dartx.setBaseAndExtent](baseNode, baseOffset, extentNode, extentOffset) {
-    return this.setBaseAndExtent(baseNode, baseOffset, extentNode, extentOffset);
+  [dartx.setBaseAndExtent](...args) {
+    return this.setBaseAndExtent.apply(this, args);
   }
-  [dartx.setPosition](node, offset) {
-    return this.setPosition(node, offset);
+  [dartx.setPosition](...args) {
+    return this.setPosition.apply(this, args);
   }
 };
 dart.setSignature(html.Selection, {
@@ -70372,8 +70372,8 @@
   get [dartx.targetUrl]() {
     return this.targetURL;
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
   [dartx.postMessage](message, transfer) {
     if (transfer === void 0) transfer = null;
@@ -70386,11 +70386,11 @@
     this[_postMessage_2](message_1);
     return;
   }
-  [_postMessage_1](message, transfer) {
-    return this.postMessage(message, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message) {
-    return this.postMessage(message);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
 };
 dart.setSignature(html.ServicePort, {
@@ -70428,18 +70428,18 @@
     }
     return this[_connect_2](url);
   }
-  [_connect_1](url, options) {
-    return this.connect(url, options);
+  [_connect_1](...args) {
+    return this.connect.apply(this, args);
   }
-  [_connect_2](url) {
-    return this.connect(url);
+  [_connect_2](...args) {
+    return this.connect.apply(this, args);
   }
   [dartx.match](options) {
     let options_1 = html_common.convertDartToNative_Dictionary(options);
     return this[_match_1](options_1);
   }
-  [_match_1](options) {
-    return this.match(options);
+  [_match_1](...args) {
+    return this.match.apply(this, args);
   }
   [dartx.matchAll](options) {
     if (options === void 0) options = null;
@@ -70449,11 +70449,11 @@
     }
     return this[_matchAll_2]();
   }
-  [_matchAll_1](options) {
-    return this.matchAll(options);
+  [_matchAll_1](...args) {
+    return this.matchAll.apply(this, args);
   }
-  [_matchAll_2]() {
-    return this.matchAll();
+  [_matchAll_2](...args) {
+    return this.matchAll.apply(this, args);
   }
   get [dartx.onMessage]() {
     return html.ServicePortCollection.messageEvent.forTarget(this);
@@ -70509,8 +70509,8 @@
   get [dartx.targetUrl]() {
     return this.targetURL;
   }
-  [dartx.respondWith](response) {
-    return this.respondWith(response);
+  [dartx.respondWith](...args) {
+    return this.respondWith.apply(this, args);
   }
 };
 dart.setSignature(html.ServicePortConnectEvent, {
@@ -70548,11 +70548,11 @@
   get [dartx.ready]() {
     return this.ready;
   }
-  [dartx.getRegistration](documentURL) {
-    return this.getRegistration(documentURL);
+  [dartx.getRegistration](...args) {
+    return this.getRegistration.apply(this, args);
   }
-  [dartx.getRegistrations]() {
-    return this.getRegistrations();
+  [dartx.getRegistrations](...args) {
+    return this.getRegistrations.apply(this, args);
   }
   [dartx.register](url, options) {
     if (options === void 0) options = null;
@@ -70562,11 +70562,11 @@
     }
     return this[_register_2](url);
   }
-  [_register_1](url, options) {
-    return this.register(url, options);
+  [_register_1](...args) {
+    return this.register.apply(this, args);
   }
-  [_register_2](url) {
-    return this.register(url);
+  [_register_2](...args) {
+    return this.register.apply(this, args);
   }
   get [dartx.onMessage]() {
     return html.ServiceWorkerContainer.messageEvent.forTarget(this);
@@ -70614,8 +70614,8 @@
   get [dartx.registration]() {
     return this.registration;
   }
-  [dartx.skipWaiting]() {
-    return this.skipWaiting();
+  [dartx.skipWaiting](...args) {
+    return this.skipWaiting.apply(this, args);
   }
   get [dartx.onMessage]() {
     return html.ServiceWorkerGlobalScope.messageEvent.forTarget(this);
@@ -70756,11 +70756,11 @@
     }
     return this[_getNotifications_2]();
   }
-  [_getNotifications_1](filter) {
-    return this.getNotifications(filter);
+  [_getNotifications_1](...args) {
+    return this.getNotifications.apply(this, args);
   }
-  [_getNotifications_2]() {
-    return this.getNotifications();
+  [_getNotifications_2](...args) {
+    return this.getNotifications.apply(this, args);
   }
   [dartx.showNotification](title, options) {
     if (options === void 0) options = null;
@@ -70770,17 +70770,17 @@
     }
     return this[_showNotification_2](title);
   }
-  [_showNotification_1](title, options) {
-    return this.showNotification(title, options);
+  [_showNotification_1](...args) {
+    return this.showNotification.apply(this, args);
   }
-  [_showNotification_2](title) {
-    return this.showNotification(title);
+  [_showNotification_2](...args) {
+    return this.showNotification.apply(this, args);
   }
-  [dartx.unregister]() {
-    return this.unregister();
+  [dartx.unregister](...args) {
+    return this.unregister.apply(this, args);
   }
-  [dartx.update]() {
-    return this.update();
+  [dartx.update](...args) {
+    return this.update.apply(this, args);
   }
 };
 dart.setSignature(html.ServiceWorkerRegistration, {
@@ -70823,8 +70823,8 @@
   static get supported() {
     return html.Element.isTagSupported('shadow');
   }
-  [dartx.getDistributedNodes]() {
-    return this.getDistributedNodes();
+  [dartx.getDistributedNodes](...args) {
+    return this.getDistributedNodes.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.ShadowElement, 'created');
@@ -70879,17 +70879,17 @@
   get [dartx.styleSheets]() {
     return this.styleSheets;
   }
-  [dartx.clone](deep) {
-    return this.cloneNode(deep);
+  [dartx.clone](...args) {
+    return this.cloneNode.apply(this, args);
   }
-  [dartx.elementFromPoint](x, y) {
-    return this.elementFromPoint(x, y);
+  [dartx.elementFromPoint](...args) {
+    return this.elementFromPoint.apply(this, args);
   }
-  [dartx.elementsFromPoint](x, y) {
-    return this.elementsFromPoint(x, y);
+  [dartx.elementsFromPoint](...args) {
+    return this.elementsFromPoint.apply(this, args);
   }
-  [dartx.getSelection]() {
-    return this.getSelection();
+  [dartx.getSelection](...args) {
+    return this.getSelection.apply(this, args);
   }
   static get supported() {
     return !!(Element.prototype.createShadowRoot || Element.prototype.webkitCreateShadowRoot);
@@ -71099,20 +71099,20 @@
   get [dartx.updating]() {
     return this.updating;
   }
-  [dartx.abort]() {
-    return this.abort();
+  [dartx.abort](...args) {
+    return this.abort.apply(this, args);
   }
-  [dartx.appendBuffer](data) {
-    return this.appendBuffer(data);
+  [dartx.appendBuffer](...args) {
+    return this.appendBuffer.apply(this, args);
   }
-  [dartx.appendStream](stream, maxSize) {
-    return this.appendStream(stream, maxSize);
+  [dartx.appendStream](...args) {
+    return this.appendStream.apply(this, args);
   }
-  [dartx.appendTypedData](data) {
-    return this.appendBuffer(data);
+  [dartx.appendTypedData](...args) {
+    return this.appendBuffer.apply(this, args);
   }
-  [dartx.remove](start, end) {
-    return this.remove(start, end);
+  [dartx.remove](...args) {
+    return this.remove.apply(this, args);
   }
 };
 dart.setSignature(html.SourceBuffer, {
@@ -71188,8 +71188,8 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html.SourceBufferList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSourceBuffer()];
@@ -71433,14 +71433,14 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.addFromString](string, weight) {
-    return this.addFromString(string, weight);
+  [dartx.addFromString](...args) {
+    return this.addFromString.apply(this, args);
   }
-  [dartx.addFromUri](src, weight) {
-    return this.addFromUri(src, weight);
+  [dartx.addFromUri](...args) {
+    return this.addFromUri.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html.SpeechGrammarList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSpeechGrammar()];
@@ -71540,14 +71540,14 @@
   set [dartx.serviceUri](value) {
     this.serviceURI = value;
   }
-  [dartx.abort]() {
-    return this.abort();
+  [dartx.abort](...args) {
+    return this.abort.apply(this, args);
   }
-  [dartx.start]() {
-    return this.start();
+  [dartx.start](...args) {
+    return this.start.apply(this, args);
   }
-  [dartx.stop]() {
-    return this.stop();
+  [dartx.stop](...args) {
+    return this.stop.apply(this, args);
   }
   get [dartx.onAudioEnd]() {
     return html.SpeechRecognition.audioEndEvent.forTarget(this);
@@ -71807,8 +71807,8 @@
   get [dartx.length]() {
     return this.length;
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 dart.setSignature(html.SpeechRecognitionResult, {
@@ -71843,20 +71843,20 @@
   get [dartx.speaking]() {
     return this.speaking;
   }
-  [dartx.cancel]() {
-    return this.cancel();
+  [dartx.cancel](...args) {
+    return this.cancel.apply(this, args);
   }
-  [dartx.getVoices]() {
-    return this.getVoices();
+  [dartx.getVoices](...args) {
+    return this.getVoices.apply(this, args);
   }
-  [dartx.pause]() {
-    return this.pause();
+  [dartx.pause](...args) {
+    return this.pause.apply(this, args);
   }
-  [dartx.resume]() {
-    return this.resume();
+  [dartx.resume](...args) {
+    return this.resume.apply(this, args);
   }
-  [dartx.speak](utterance) {
-    return this.speak(utterance);
+  [dartx.speak](...args) {
+    return this.speak.apply(this, args);
   }
 };
 dart.setSignature(html.SpeechSynthesis, {
@@ -72121,8 +72121,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.add](name, port) {
-    return this.add(name, port);
+  [dartx.add](...args) {
+    return this.add.apply(this, args);
   }
   get [dartx.onMessage]() {
     return html.StashedPortCollection.messageEvent.forTarget(this);
@@ -72225,29 +72225,29 @@
   get [_length]() {
     return this.length;
   }
-  [__delete__](index_OR_name) {
-    return this.__delete__(index_OR_name);
+  [__delete__](...args) {
+    return this.__delete__.apply(this, args);
   }
-  [__getter__](index_OR_name) {
-    return this.__getter__(index_OR_name);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [__setter__](index_OR_name, value) {
-    return this.__setter__(index_OR_name, value);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [_clear]() {
-    return this.clear();
+  [_clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [_getItem](key) {
-    return this.getItem(key);
+  [_getItem](...args) {
+    return this.getItem.apply(this, args);
   }
-  [_key](index) {
-    return this.key(index);
+  [_key](...args) {
+    return this.key.apply(this, args);
   }
-  [_removeItem](key) {
-    return this.removeItem(key);
+  [_removeItem](...args) {
+    return this.removeItem.apply(this, args);
   }
-  [_setItem](key, data) {
-    return this.setItem(key, data);
+  [_setItem](...args) {
+    return this.setItem.apply(this, args);
   }
 };
 html.Storage[dart.implements] = () => [MapOfString$String()];
@@ -72333,8 +72333,8 @@
   get [dartx.url]() {
     return this.url;
   }
-  [_initStorageEvent](typeArg, canBubbleArg, cancelableArg, keyArg, oldValueArg, newValueArg, urlArg, storageAreaArg) {
-    return this.initStorageEvent(typeArg, canBubbleArg, cancelableArg, keyArg, oldValueArg, newValueArg, urlArg, storageAreaArg);
+  [_initStorageEvent](...args) {
+    return this.initStorageEvent.apply(this, args);
   }
 };
 dart.setSignature(html.StorageEvent, {
@@ -72392,11 +72392,11 @@
   get [dartx.supportedTypes]() {
     return this.supportedTypes;
   }
-  [dartx.queryInfo](type) {
-    return this.queryInfo(type);
+  [dartx.queryInfo](...args) {
+    return this.queryInfo.apply(this, args);
   }
-  [dartx.requestPersistentQuota](newQuota) {
-    return this.requestPersistentQuota(newQuota);
+  [dartx.requestPersistentQuota](...args) {
+    return this.requestPersistentQuota.apply(this, args);
   }
 };
 dart.setSignature(html.StorageQuota, {
@@ -72479,8 +72479,8 @@
   get [dartx.type]() {
     return this.type;
   }
-  [dartx.matchMedium](mediaquery) {
-    return this.matchMedium(mediaquery);
+  [dartx.matchMedium](...args) {
+    return this.matchMedium.apply(this, args);
   }
 };
 dart.setSignature(html.StyleMedia, {
@@ -72527,14 +72527,14 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.getRegistration](tag) {
-    return this.getRegistration(tag);
+  [dartx.getRegistration](...args) {
+    return this.getRegistration.apply(this, args);
   }
-  [dartx.getRegistrations]() {
-    return this.getRegistrations();
+  [dartx.getRegistrations](...args) {
+    return this.getRegistrations.apply(this, args);
   }
-  [dartx.permissionState]() {
-    return this.permissionState();
+  [dartx.permissionState](...args) {
+    return this.permissionState.apply(this, args);
   }
   [dartx.register](options) {
     if (options === void 0) options = null;
@@ -72544,11 +72544,11 @@
     }
     return this[_register_2]();
   }
-  [_register_1](options) {
-    return this.register(options);
+  [_register_1](...args) {
+    return this.register.apply(this, args);
   }
-  [_register_2]() {
-    return this.register();
+  [_register_2](...args) {
+    return this.register.apply(this, args);
   }
 };
 dart.setSignature(html.SyncManager, {
@@ -72574,8 +72574,8 @@
   get [dartx.tag]() {
     return this.tag;
   }
-  [dartx.unregister]() {
-    return this.unregister();
+  [dartx.unregister](...args) {
+    return this.unregister.apply(this, args);
   }
 };
 dart.setSignature(html.SyncRegistration, {
@@ -72753,8 +72753,8 @@
     this[dartx.children][dartx.add](tbody);
     return html.TableSectionElement._check(tbody);
   }
-  [_nativeCreateTBody]() {
-    return this.createTBody();
+  [_nativeCreateTBody](...args) {
+    return this.createTBody.apply(this, args);
   }
   [dartx.createFragment](html, opts) {
     let validator = opts && 'validator' in opts ? opts.validator : null;
@@ -72806,29 +72806,29 @@
   set [dartx.tHead](value) {
     this.tHead = value;
   }
-  [_createCaption]() {
-    return this.createCaption();
+  [_createCaption](...args) {
+    return this.createCaption.apply(this, args);
   }
-  [_createTFoot]() {
-    return this.createTFoot();
+  [_createTFoot](...args) {
+    return this.createTFoot.apply(this, args);
   }
-  [_createTHead]() {
-    return this.createTHead();
+  [_createTHead](...args) {
+    return this.createTHead.apply(this, args);
   }
-  [dartx.deleteCaption]() {
-    return this.deleteCaption();
+  [dartx.deleteCaption](...args) {
+    return this.deleteCaption.apply(this, args);
   }
-  [dartx.deleteRow](index) {
-    return this.deleteRow(index);
+  [dartx.deleteRow](...args) {
+    return this.deleteRow.apply(this, args);
   }
-  [dartx.deleteTFoot]() {
-    return this.deleteTFoot();
+  [dartx.deleteTFoot](...args) {
+    return this.deleteTFoot.apply(this, args);
   }
-  [dartx.deleteTHead]() {
-    return this.deleteTHead();
+  [dartx.deleteTHead](...args) {
+    return this.deleteTHead.apply(this, args);
   }
-  [_insertRow](index) {
-    return this.insertRow(index);
+  [_insertRow](...args) {
+    return this.insertRow.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.TableElement, 'created');
@@ -72923,11 +72923,11 @@
   get [dartx.sectionRowIndex]() {
     return this.sectionRowIndex;
   }
-  [dartx.deleteCell](index) {
-    return this.deleteCell(index);
+  [dartx.deleteCell](...args) {
+    return this.deleteCell.apply(this, args);
   }
-  [_insertCell](index) {
-    return this.insertCell(index);
+  [_insertCell](...args) {
+    return this.insertCell.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.TableRowElement, 'created');
@@ -72989,11 +72989,11 @@
   get [_rows]() {
     return this.rows;
   }
-  [dartx.deleteRow](index) {
-    return this.deleteRow(index);
+  [dartx.deleteRow](...args) {
+    return this.deleteRow.apply(this, args);
   }
-  [_insertRow](index) {
-    return this.insertRow(index);
+  [_insertRow](...args) {
+    return this.insertRow.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.TableSectionElement, 'created');
@@ -73257,23 +73257,23 @@
   set [dartx.wrap](value) {
     this.wrap = value;
   }
-  [dartx.checkValidity]() {
-    return this.checkValidity();
+  [dartx.checkValidity](...args) {
+    return this.checkValidity.apply(this, args);
   }
-  [dartx.reportValidity]() {
-    return this.reportValidity();
+  [dartx.reportValidity](...args) {
+    return this.reportValidity.apply(this, args);
   }
-  [dartx.select]() {
-    return this.select();
+  [dartx.select](...args) {
+    return this.select.apply(this, args);
   }
-  [dartx.setCustomValidity](error) {
-    return this.setCustomValidity(error);
+  [dartx.setCustomValidity](...args) {
+    return this.setCustomValidity.apply(this, args);
   }
-  [dartx.setRangeText](replacement, opts) {
-    return this.setRangeText(replacement, opts);
+  [dartx.setRangeText](...args) {
+    return this.setRangeText.apply(this, args);
   }
-  [dartx.setSelectionRange](start, end, direction) {
-    return this.setSelectionRange(start, end, direction);
+  [dartx.setSelectionRange](...args) {
+    return this.setSelectionRange.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.TextAreaElement, 'created');
@@ -73344,8 +73344,8 @@
   get [dartx.data]() {
     return this.data;
   }
-  [_initTextEvent](typeArg, canBubbleArg, cancelableArg, viewArg, dataArg) {
-    return this.initTextEvent(typeArg, canBubbleArg, cancelableArg, viewArg, dataArg);
+  [_initTextEvent](...args) {
+    return this.initTextEvent.apply(this, args);
   }
 };
 dart.setSignature(html.TextEvent, {
@@ -73476,17 +73476,17 @@
   get [dartx.regions]() {
     return this.regions;
   }
-  [dartx.addCue](cue) {
-    return this.addCue(cue);
+  [dartx.addCue](...args) {
+    return this.addCue.apply(this, args);
   }
-  [dartx.addRegion](region) {
-    return this.addRegion(region);
+  [dartx.addRegion](...args) {
+    return this.addRegion.apply(this, args);
   }
-  [dartx.removeCue](cue) {
-    return this.removeCue(cue);
+  [dartx.removeCue](...args) {
+    return this.removeCue.apply(this, args);
   }
-  [dartx.removeRegion](region) {
-    return this.removeRegion(region);
+  [dartx.removeRegion](...args) {
+    return this.removeRegion.apply(this, args);
   }
   get [dartx.onCueChange]() {
     return html.TextTrack.cueChangeEvent.forTarget(this);
@@ -73647,11 +73647,11 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.getCueById](id) {
-    return this.getCueById(id);
+  [dartx.getCueById](...args) {
+    return this.getCueById.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html.TextTrackCueList[dart.implements] = () => [ListOfTextTrackCue(), _js_helper.JavaScriptIndexingBehavior];
@@ -73729,11 +73729,11 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.getTrackById](id) {
-    return this.getTrackById(id);
+  [dartx.getTrackById](...args) {
+    return this.getTrackById.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
   get [dartx.onAddTrack]() {
     return html.TextTrackList.addTrackEvent.forTarget(this);
@@ -73787,11 +73787,11 @@
   get [dartx.length]() {
     return this.length;
   }
-  [dartx.end](index) {
-    return this.end(index);
+  [dartx.end](...args) {
+    return this.end.apply(this, args);
   }
-  [dartx.start](index) {
-    return this.start(index);
+  [dartx.start](...args) {
+    return this.start.apply(this, args);
   }
 };
 dart.setSignature(html.TimeRanges, {
@@ -74014,8 +74014,8 @@
   get [dartx.touches]() {
     return this.touches;
   }
-  [_initTouchEvent](touches, targetTouches, changedTouches, type, view, unused1, unused2, unused3, unused4, ctrlKey, altKey, shiftKey, metaKey) {
-    return this.initTouchEvent(touches, targetTouches, changedTouches, type, view, unused1, unused2, unused3, unused4, ctrlKey, altKey, shiftKey, metaKey);
+  [_initTouchEvent](...args) {
+    return this.initTouchEvent.apply(this, args);
   }
   static get supported() {
     return html_common.Device.isEventTypeSupported('TouchEvent');
@@ -74098,8 +74098,8 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html.TouchList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfTouch()];
@@ -74209,8 +74209,8 @@
   get [dartx.length]() {
     return this.length;
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 dart.setSignature(html.TrackDefaultList, {
@@ -74446,26 +74446,26 @@
   get [dartx.whatToShow]() {
     return this.whatToShow;
   }
-  [dartx.firstChild]() {
-    return this.firstChild();
+  [dartx.firstChild](...args) {
+    return this.firstChild.apply(this, args);
   }
-  [dartx.lastChild]() {
-    return this.lastChild();
+  [dartx.lastChild](...args) {
+    return this.lastChild.apply(this, args);
   }
-  [dartx.nextNode]() {
-    return this.nextNode();
+  [dartx.nextNode](...args) {
+    return this.nextNode.apply(this, args);
   }
-  [dartx.nextSibling]() {
-    return this.nextSibling();
+  [dartx.nextSibling](...args) {
+    return this.nextSibling.apply(this, args);
   }
-  [dartx.parentNode]() {
-    return this.parentNode();
+  [dartx.parentNode](...args) {
+    return this.parentNode.apply(this, args);
   }
-  [dartx.previousNode]() {
-    return this.previousNode();
+  [dartx.previousNode](...args) {
+    return this.previousNode.apply(this, args);
   }
-  [dartx.previousSibling]() {
-    return this.previousSibling();
+  [dartx.previousSibling](...args) {
+    return this.previousSibling.apply(this, args);
   }
 };
 dart.setSignature(html.TreeWalker, {
@@ -75175,14 +75175,14 @@
   set [dartx.width](value) {
     this.width = value;
   }
-  [dartx.getVideoPlaybackQuality]() {
-    return this.getVideoPlaybackQuality();
+  [dartx.getVideoPlaybackQuality](...args) {
+    return this.getVideoPlaybackQuality.apply(this, args);
   }
-  [dartx.enterFullscreen]() {
-    return this.webkitEnterFullscreen();
+  [dartx.enterFullscreen](...args) {
+    return this.webkitEnterFullscreen.apply(this, args);
   }
-  [dartx.exitFullscreen]() {
-    return this.webkitExitFullscreen();
+  [dartx.exitFullscreen](...args) {
+    return this.webkitExitFullscreen.apply(this, args);
   }
 };
 dart.defineNamedConstructor(html.VideoElement, 'created');
@@ -75299,11 +75299,11 @@
   get [dartx.selectedIndex]() {
     return this.selectedIndex;
   }
-  [__getter__](index) {
-    return this.__getter__(index);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [dartx.getTrackById](id) {
-    return this.getTrackById(id);
+  [dartx.getTrackById](...args) {
+    return this.getTrackById.apply(this, args);
   }
   get [dartx.onChange]() {
     return html.VideoTrackList.changeEvent.forTarget(this);
@@ -75398,8 +75398,8 @@
   set [dartx.vertical](value) {
     this.vertical = value;
   }
-  [dartx.getCueAsHtml]() {
-    return this.getCueAsHTML();
+  [dartx.getCueAsHtml](...args) {
+    return this.getCueAsHTML.apply(this, args);
   }
 };
 dart.setSignature(html.VttCue, {
@@ -75527,11 +75527,11 @@
   get [dartx.length]() {
     return this.length;
   }
-  [dartx.getRegionById](id) {
-    return this.getRegionById(id);
+  [dartx.getRegionById](...args) {
+    return this.getRegionById.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 dart.setSignature(html.VttRegionList, {
@@ -75602,23 +75602,23 @@
   get [dartx.url]() {
     return this.url;
   }
-  [dartx.close](code, reason) {
-    return this.close(code, reason);
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
-  [dartx.send](data) {
-    return this.send(data);
+  [dartx.send](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.sendBlob](data) {
-    return this.send(data);
+  [dartx.sendBlob](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.sendByteBuffer](data) {
-    return this.send(data);
+  [dartx.sendByteBuffer](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.sendString](data) {
-    return this.send(data);
+  [dartx.sendString](...args) {
+    return this.send.apply(this, args);
   }
-  [dartx.sendTypedData](data) {
-    return this.send(data);
+  [dartx.sendTypedData](...args) {
+    return this.send.apply(this, args);
   }
   get [dartx.onClose]() {
     return html.WebSocket.closeEvent.forTarget(this);
@@ -75789,14 +75789,14 @@
   get [_hasInitMouseScrollEvent]() {
     return !!this.initMouseScrollEvent;
   }
-  [_initMouseScrollEvent](type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget, axis) {
-    return this.initMouseScrollEvent(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget, axis);
+  [_initMouseScrollEvent](...args) {
+    return this.initMouseScrollEvent.apply(this, args);
   }
   get [_hasInitWheelEvent]() {
     return !!this.initWheelEvent;
   }
-  [_initWheelEvent](eventType, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, button, relatedTarget, modifiersList, deltaX, deltaY, deltaZ, deltaMode) {
-    return this.initWheelEvent(eventType, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, button, relatedTarget, modifiersList, deltaX, deltaY, deltaZ, deltaMode);
+  [_initWheelEvent](...args) {
+    return this.initWheelEvent.apply(this, args);
   }
 };
 dart.setSignature(html.WheelEvent, {
@@ -76058,11 +76058,11 @@
     this[_ensureRequestAnimationFrame]();
     this[_cancelAnimationFrame](id);
   }
-  [_requestAnimationFrame](callback) {
-    return this.requestAnimationFrame(callback);
+  [_requestAnimationFrame](...args) {
+    return this.requestAnimationFrame.apply(this, args);
   }
-  [_cancelAnimationFrame](id) {
-    return this.cancelAnimationFrame(id);
+  [_cancelAnimationFrame](...args) {
+    return this.cancelAnimationFrame.apply(this, args);
   }
   [_ensureRequestAnimationFrame]() {
     if (!!(this.requestAnimationFrame && this.cancelAnimationFrame)) return;
@@ -76255,20 +76255,20 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [__getter___1](index) {
-    return this.__getter__(index);
+  [__getter___1](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [__getter___2](name) {
-    return this.__getter__(name);
+  [__getter___2](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [dartx.alert](message) {
-    return this.alert(message);
+  [dartx.alert](...args) {
+    return this.alert.apply(this, args);
   }
-  [dartx.close]() {
-    return this.close();
+  [dartx.close](...args) {
+    return this.close.apply(this, args);
   }
-  [dartx.confirm](message) {
-    return this.confirm(message);
+  [dartx.confirm](...args) {
+    return this.confirm.apply(this, args);
   }
   [dartx.fetch](input, init) {
     if (init === void 0) init = null;
@@ -76278,35 +76278,35 @@
     }
     return this[_fetch_2](input);
   }
-  [_fetch_1](input, init) {
-    return this.fetch(input, init);
+  [_fetch_1](...args) {
+    return this.fetch.apply(this, args);
   }
-  [_fetch_2](input) {
-    return this.fetch(input);
+  [_fetch_2](...args) {
+    return this.fetch.apply(this, args);
   }
-  [dartx.find](string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog) {
-    return this.find(string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog);
+  [dartx.find](...args) {
+    return this.find.apply(this, args);
   }
-  [_getComputedStyle](elt, pseudoElt) {
-    return this.getComputedStyle(elt, pseudoElt);
+  [_getComputedStyle](...args) {
+    return this.getComputedStyle.apply(this, args);
   }
-  [dartx.getMatchedCssRules](element, pseudoElement) {
-    return this.getMatchedCSSRules(element, pseudoElement);
+  [dartx.getMatchedCssRules](...args) {
+    return this.getMatchedCSSRules.apply(this, args);
   }
-  [dartx.getSelection]() {
-    return this.getSelection();
+  [dartx.getSelection](...args) {
+    return this.getSelection.apply(this, args);
   }
-  [dartx.matchMedia](query) {
-    return this.matchMedia(query);
+  [dartx.matchMedia](...args) {
+    return this.matchMedia.apply(this, args);
   }
-  [dartx.moveBy](x, y) {
-    return this.moveBy(x, y);
+  [dartx.moveBy](...args) {
+    return this.moveBy.apply(this, args);
   }
-  [_moveTo](x, y) {
-    return this.moveTo(x, y);
+  [_moveTo](...args) {
+    return this.moveTo.apply(this, args);
   }
-  [dartx.openDatabase](name, version, displayName, estimatedSize, creationCallback) {
-    return this.openDatabase(name, version, displayName, estimatedSize, creationCallback);
+  [dartx.openDatabase](...args) {
+    return this.openDatabase.apply(this, args);
   }
   [dartx.postMessage](message, targetOrigin, transfer) {
     if (transfer === void 0) transfer = null;
@@ -76319,20 +76319,20 @@
     this[_postMessage_2](message_1, targetOrigin);
     return;
   }
-  [_postMessage_1](message, targetOrigin, transfer) {
-    return this.postMessage(message, targetOrigin, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message, targetOrigin) {
-    return this.postMessage(message, targetOrigin);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [dartx.print]() {
-    return this.print();
+  [dartx.print](...args) {
+    return this.print.apply(this, args);
   }
-  [dartx.resizeBy](x, y) {
-    return this.resizeBy(x, y);
+  [dartx.resizeBy](...args) {
+    return this.resizeBy.apply(this, args);
   }
-  [dartx.resizeTo](x, y) {
-    return this.resizeTo(x, y);
+  [dartx.resizeTo](...args) {
+    return this.resizeTo.apply(this, args);
   }
   [dartx.scroll](options_OR_x, y, scrollOptions) {
     if (options_OR_x === void 0) options_OR_x = null;
@@ -76362,20 +76362,20 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_scroll_1]() {
-    return this.scroll();
+  [_scroll_1](...args) {
+    return this.scroll.apply(this, args);
   }
-  [_scroll_2](options) {
-    return this.scroll(options);
+  [_scroll_2](...args) {
+    return this.scroll.apply(this, args);
   }
-  [_scroll_3](x, y) {
-    return this.scroll(x, y);
+  [_scroll_3](...args) {
+    return this.scroll.apply(this, args);
   }
-  [_scroll_4](x, y) {
-    return this.scroll(x, y);
+  [_scroll_4](...args) {
+    return this.scroll.apply(this, args);
   }
-  [_scroll_5](x, y, scrollOptions) {
-    return this.scroll(x, y, scrollOptions);
+  [_scroll_5](...args) {
+    return this.scroll.apply(this, args);
   }
   [dartx.scrollBy](options_OR_x, y, scrollOptions) {
     if (options_OR_x === void 0) options_OR_x = null;
@@ -76405,20 +76405,20 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_scrollBy_1]() {
-    return this.scrollBy();
+  [_scrollBy_1](...args) {
+    return this.scrollBy.apply(this, args);
   }
-  [_scrollBy_2](options) {
-    return this.scrollBy(options);
+  [_scrollBy_2](...args) {
+    return this.scrollBy.apply(this, args);
   }
-  [_scrollBy_3](x, y) {
-    return this.scrollBy(x, y);
+  [_scrollBy_3](...args) {
+    return this.scrollBy.apply(this, args);
   }
-  [_scrollBy_4](x, y) {
-    return this.scrollBy(x, y);
+  [_scrollBy_4](...args) {
+    return this.scrollBy.apply(this, args);
   }
-  [_scrollBy_5](x, y, scrollOptions) {
-    return this.scrollBy(x, y, scrollOptions);
+  [_scrollBy_5](...args) {
+    return this.scrollBy.apply(this, args);
   }
   [dartx.scrollTo](options_OR_x, y, scrollOptions) {
     if (options_OR_x === void 0) options_OR_x = null;
@@ -76448,26 +76448,26 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_scrollTo_1]() {
-    return this.scrollTo();
+  [_scrollTo_1](...args) {
+    return this.scrollTo.apply(this, args);
   }
-  [_scrollTo_2](options) {
-    return this.scrollTo(options);
+  [_scrollTo_2](...args) {
+    return this.scrollTo.apply(this, args);
   }
-  [_scrollTo_3](x, y) {
-    return this.scrollTo(x, y);
+  [_scrollTo_3](...args) {
+    return this.scrollTo.apply(this, args);
   }
-  [_scrollTo_4](x, y) {
-    return this.scrollTo(x, y);
+  [_scrollTo_4](...args) {
+    return this.scrollTo.apply(this, args);
   }
-  [_scrollTo_5](x, y, scrollOptions) {
-    return this.scrollTo(x, y, scrollOptions);
+  [_scrollTo_5](...args) {
+    return this.scrollTo.apply(this, args);
   }
-  [dartx.stop]() {
-    return this.stop();
+  [dartx.stop](...args) {
+    return this.stop.apply(this, args);
   }
-  [__requestFileSystem](type, size, successCallback, errorCallback) {
-    return this.webkitRequestFileSystem(type, size, successCallback, errorCallback);
+  [__requestFileSystem](...args) {
+    return this.webkitRequestFileSystem.apply(this, args);
   }
   [_requestFileSystem](type, size) {
     let completer = CompleterOfFileSystem().new();
@@ -76478,8 +76478,8 @@
     }, FileErrorTovoid()));
     return completer.future;
   }
-  [_resolveLocalFileSystemUrl](url, successCallback, errorCallback) {
-    return this.webkitResolveLocalFileSystemURL(url, successCallback, errorCallback);
+  [_resolveLocalFileSystemUrl](...args) {
+    return this.webkitResolveLocalFileSystemURL.apply(this, args);
   }
   [dartx.resolveLocalFileSystemUrl](url) {
     let completer = CompleterOfEntry().new();
@@ -76490,29 +76490,29 @@
     }, FileErrorTovoid()));
     return completer.future;
   }
-  [dartx.atob](atob) {
-    return this.atob(atob);
+  [dartx.atob](...args) {
+    return this.atob.apply(this, args);
   }
-  [dartx.btoa](btoa) {
-    return this.btoa(btoa);
+  [dartx.btoa](...args) {
+    return this.btoa.apply(this, args);
   }
-  [_setInterval_String](handler, timeout, arguments$) {
-    return this.setInterval(handler, timeout, arguments$);
+  [_setInterval_String](...args) {
+    return this.setInterval.apply(this, args);
   }
-  [_setTimeout_String](handler, timeout, arguments$) {
-    return this.setTimeout(handler, timeout, arguments$);
+  [_setTimeout_String](...args) {
+    return this.setTimeout.apply(this, args);
   }
-  [_clearInterval](handle) {
-    return this.clearInterval(handle);
+  [_clearInterval](...args) {
+    return this.clearInterval.apply(this, args);
   }
-  [_clearTimeout](handle) {
-    return this.clearTimeout(handle);
+  [_clearTimeout](...args) {
+    return this.clearTimeout.apply(this, args);
   }
-  [_setInterval](handler, timeout) {
-    return this.setInterval(handler, timeout);
+  [_setInterval](...args) {
+    return this.setInterval.apply(this, args);
   }
-  [_setTimeout](handler, timeout) {
-    return this.setTimeout(handler, timeout);
+  [_setTimeout](...args) {
+    return this.setTimeout.apply(this, args);
   }
   get [dartx.onContentLoaded]() {
     return html.Window.contentLoadedEvent.forTarget(this);
@@ -77226,8 +77226,8 @@
   get [dartx.visibilityState]() {
     return this.visibilityState;
   }
-  [dartx.focus]() {
-    return this.focus();
+  [dartx.focus](...args) {
+    return this.focus.apply(this, args);
   }
 };
 dart.setSignature(html.WindowClient, {
@@ -77357,14 +77357,14 @@
     this[_postMessage_2](message_1);
     return;
   }
-  [_postMessage_1](message, transfer) {
-    return this.postMessage(message, transfer);
+  [_postMessage_1](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [_postMessage_2](message) {
-    return this.postMessage(message);
+  [_postMessage_2](...args) {
+    return this.postMessage.apply(this, args);
   }
-  [dartx.terminate]() {
-    return this.terminate();
+  [dartx.terminate](...args) {
+    return this.terminate.apply(this, args);
   }
   get [dartx.onError]() {
     return html.Worker.errorEvent.forTarget(this);
@@ -77435,35 +77435,35 @@
   get [dartx.memory]() {
     return this.memory;
   }
-  [dartx.clearMarks](markName) {
-    return this.clearMarks(markName);
+  [dartx.clearMarks](...args) {
+    return this.clearMarks.apply(this, args);
   }
-  [dartx.clearMeasures](measureName) {
-    return this.clearMeasures(measureName);
+  [dartx.clearMeasures](...args) {
+    return this.clearMeasures.apply(this, args);
   }
-  [dartx.getEntries]() {
-    return this.getEntries();
+  [dartx.getEntries](...args) {
+    return this.getEntries.apply(this, args);
   }
-  [dartx.getEntriesByName](name, entryType) {
-    return this.getEntriesByName(name, entryType);
+  [dartx.getEntriesByName](...args) {
+    return this.getEntriesByName.apply(this, args);
   }
-  [dartx.getEntriesByType](entryType) {
-    return this.getEntriesByType(entryType);
+  [dartx.getEntriesByType](...args) {
+    return this.getEntriesByType.apply(this, args);
   }
-  [dartx.mark](markName) {
-    return this.mark(markName);
+  [dartx.mark](...args) {
+    return this.mark.apply(this, args);
   }
-  [dartx.measure](measureName, startMark, endMark) {
-    return this.measure(measureName, startMark, endMark);
+  [dartx.measure](...args) {
+    return this.measure.apply(this, args);
   }
-  [dartx.now]() {
-    return this.now();
+  [dartx.now](...args) {
+    return this.now.apply(this, args);
   }
-  [dartx.clearResourceTimings]() {
-    return this.webkitClearResourceTimings();
+  [dartx.clearResourceTimings](...args) {
+    return this.webkitClearResourceTimings.apply(this, args);
   }
-  [dartx.setResourceTimingBufferSize](maxSize) {
-    return this.webkitSetResourceTimingBufferSize(maxSize);
+  [dartx.setResourceTimingBufferSize](...args) {
+    return this.webkitSetResourceTimingBufferSize.apply(this, args);
   }
 };
 dart.setSignature(html.WorkerPerformance, {
@@ -77498,14 +77498,14 @@
   static _create_1() {
     return new XPathEvaluator();
   }
-  [dartx.createExpression](expression, resolver) {
-    return this.createExpression(expression, resolver);
+  [dartx.createExpression](...args) {
+    return this.createExpression.apply(this, args);
   }
-  [dartx.createNSResolver](nodeResolver) {
-    return this.createNSResolver(nodeResolver);
+  [dartx.createNSResolver](...args) {
+    return this.createNSResolver.apply(this, args);
   }
-  [dartx.evaluate](expression, contextNode, resolver, type, inResult) {
-    return this.evaluate(expression, contextNode, resolver, type, inResult);
+  [dartx.evaluate](...args) {
+    return this.evaluate.apply(this, args);
   }
 };
 dart.setSignature(html.XPathEvaluator, {
@@ -77529,8 +77529,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.evaluate](contextNode, type, inResult) {
-    return this.evaluate(contextNode, type, inResult);
+  [dartx.evaluate](...args) {
+    return this.evaluate.apply(this, args);
   }
 };
 dart.setSignature(html.XPathExpression, {
@@ -77545,8 +77545,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.lookupNamespaceUri](prefix) {
-    return this.lookupNamespaceURI(prefix);
+  [dartx.lookupNamespaceUri](...args) {
+    return this.lookupNamespaceURI.apply(this, args);
   }
 };
 dart.setSignature(html.XPathNSResolver, {
@@ -77590,11 +77590,11 @@
   get [dartx.stringValue]() {
     return this.stringValue;
   }
-  [dartx.iterateNext]() {
-    return this.iterateNext();
+  [dartx.iterateNext](...args) {
+    return this.iterateNext.apply(this, args);
   }
-  [dartx.snapshotItem](index) {
-    return this.snapshotItem(index);
+  [dartx.snapshotItem](...args) {
+    return this.snapshotItem.apply(this, args);
   }
 };
 dart.setSignature(html.XPathResult, {
@@ -77658,8 +77658,8 @@
   static _create_1() {
     return new XMLSerializer();
   }
-  [dartx.serializeToString](root) {
-    return this.serializeToString(root);
+  [dartx.serializeToString](...args) {
+    return this.serializeToString.apply(this, args);
   }
 };
 dart.setSignature(html.XmlSerializer, {
@@ -77695,29 +77695,29 @@
   static get supported() {
     return !!window.XSLTProcessor;
   }
-  [dartx.clearParameters]() {
-    return this.clearParameters();
+  [dartx.clearParameters](...args) {
+    return this.clearParameters.apply(this, args);
   }
-  [dartx.getParameter](namespaceURI, localName) {
-    return this.getParameter(namespaceURI, localName);
+  [dartx.getParameter](...args) {
+    return this.getParameter.apply(this, args);
   }
-  [dartx.importStylesheet](style) {
-    return this.importStylesheet(style);
+  [dartx.importStylesheet](...args) {
+    return this.importStylesheet.apply(this, args);
   }
-  [dartx.removeParameter](namespaceURI, localName) {
-    return this.removeParameter(namespaceURI, localName);
+  [dartx.removeParameter](...args) {
+    return this.removeParameter.apply(this, args);
   }
-  [dartx.reset]() {
-    return this.reset();
+  [dartx.reset](...args) {
+    return this.reset.apply(this, args);
   }
-  [dartx.setParameter](namespaceURI, localName, value) {
-    return this.setParameter(namespaceURI, localName, value);
+  [dartx.setParameter](...args) {
+    return this.setParameter.apply(this, args);
   }
-  [dartx.transformToDocument](source) {
-    return this.transformToDocument(source);
+  [dartx.transformToDocument](...args) {
+    return this.transformToDocument.apply(this, args);
   }
-  [dartx.transformToFragment](source, output) {
-    return this.transformToFragment(source, output);
+  [dartx.transformToFragment](...args) {
+    return this.transformToFragment.apply(this, args);
   }
 };
 dart.setSignature(html.XsltProcessor, {
@@ -77982,11 +77982,11 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [__getter__](index) {
-    return this.__getter__(index);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html._ClientRectList[dart.implements] = () => [ListOfRectangleOfnum()];
@@ -78062,8 +78062,8 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html._CssRuleList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfCssRule()];
@@ -78315,8 +78315,8 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html._GamepadList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfGamepad()];
@@ -78341,8 +78341,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [_item](index) {
-    return this.item(index);
+  [_item](...args) {
+    return this.item.apply(this, args);
   }
 };
 dart.setSignature(html._HTMLAllCollection, {
@@ -78506,26 +78506,26 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.getNamedItem](name) {
-    return this.getNamedItem(name);
+  [dartx.getNamedItem](...args) {
+    return this.getNamedItem.apply(this, args);
   }
-  [dartx.getNamedItemNS](namespaceURI, localName) {
-    return this.getNamedItemNS(namespaceURI, localName);
+  [dartx.getNamedItemNS](...args) {
+    return this.getNamedItemNS.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
-  [dartx.removeNamedItem](name) {
-    return this.removeNamedItem(name);
+  [dartx.removeNamedItem](...args) {
+    return this.removeNamedItem.apply(this, args);
   }
-  [dartx.removeNamedItemNS](namespaceURI, localName) {
-    return this.removeNamedItemNS(namespaceURI, localName);
+  [dartx.removeNamedItemNS](...args) {
+    return this.removeNamedItemNS.apply(this, args);
   }
-  [dartx.setNamedItem](attr) {
-    return this.setNamedItem(attr);
+  [dartx.setNamedItem](...args) {
+    return this.setNamedItem.apply(this, args);
   }
-  [dartx.setNamedItemNS](attr) {
-    return this.setNamedItemNS(attr);
+  [dartx.setNamedItemNS](...args) {
+    return this.setNamedItemNS.apply(this, args);
   }
 };
 html._NamedNodeMap[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -78607,8 +78607,8 @@
   get [dartx.url]() {
     return this.url;
   }
-  [dartx.clone]() {
-    return this.clone();
+  [dartx.clone](...args) {
+    return this.clone.apply(this, args);
   }
 };
 dart.setSignature(html._Request, {
@@ -78734,8 +78734,8 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html._SpeechRecognitionResultList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSpeechRecognitionResult()];
@@ -78809,11 +78809,11 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [__getter__](name) {
-    return this.__getter__(name);
+  [__getter__](...args) {
+    return this.__getter__.apply(this, args);
   }
-  [dartx.item](index) {
-    return this.item(index);
+  [dartx.item](...args) {
+    return this.item.apply(this, args);
   }
 };
 html._StyleSheetList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfStyleSheet()];
@@ -84005,11 +84005,11 @@
   get [dartx.viewportElement]() {
     return this.viewportElement;
   }
-  [dartx.blur]() {
-    return this.blur();
+  [dartx.blur](...args) {
+    return this.blur.apply(this, args);
   }
-  [dartx.focus]() {
-    return this.focus();
+  [dartx.focus](...args) {
+    return this.focus.apply(this, args);
   }
   get [dartx.onAbort]() {
     return svg.SvgElement.abortEvent.forElement(this);
@@ -84438,17 +84438,17 @@
   get [dartx.transform]() {
     return this.transform;
   }
-  [dartx.getBBox]() {
-    return this.getBBox();
+  [dartx.getBBox](...args) {
+    return this.getBBox.apply(this, args);
   }
-  [dartx.getCtm]() {
-    return this.getCTM();
+  [dartx.getCtm](...args) {
+    return this.getCTM.apply(this, args);
   }
-  [dartx.getScreenCtm]() {
-    return this.getScreenCTM();
+  [dartx.getScreenCtm](...args) {
+    return this.getScreenCTM.apply(this, args);
   }
-  [dartx.getTransformToElement](element) {
-    return this.getTransformToElement(element);
+  [dartx.getTransformToElement](...args) {
+    return this.getTransformToElement.apply(this, args);
   }
   get [dartx.requiredExtensions]() {
     return this.requiredExtensions;
@@ -84459,8 +84459,8 @@
   get [dartx.systemLanguage]() {
     return this.systemLanguage;
   }
-  [dartx.hasExtension](extension) {
-    return this.hasExtension(extension);
+  [dartx.hasExtension](...args) {
+    return this.hasExtension.apply(this, args);
   }
 };
 dart.defineNamedConstructor(svg.GraphicsElement, 'created');
@@ -84557,11 +84557,11 @@
   set [dartx.valueInSpecifiedUnits](value) {
     this.valueInSpecifiedUnits = value;
   }
-  [dartx.convertToSpecifiedUnits](unitType) {
-    return this.convertToSpecifiedUnits(unitType);
+  [dartx.convertToSpecifiedUnits](...args) {
+    return this.convertToSpecifiedUnits.apply(this, args);
   }
-  [dartx.newValueSpecifiedUnits](unitType, valueInSpecifiedUnits) {
-    return this.newValueSpecifiedUnits(unitType, valueInSpecifiedUnits);
+  [dartx.newValueSpecifiedUnits](...args) {
+    return this.newValueSpecifiedUnits.apply(this, args);
   }
 };
 dart.setSignature(svg.Angle, {
@@ -84621,26 +84621,26 @@
   get [dartx.targetElement]() {
     return this.targetElement;
   }
-  [dartx.beginElement]() {
-    return this.beginElement();
+  [dartx.beginElement](...args) {
+    return this.beginElement.apply(this, args);
   }
-  [dartx.beginElementAt](offset) {
-    return this.beginElementAt(offset);
+  [dartx.beginElementAt](...args) {
+    return this.beginElementAt.apply(this, args);
   }
-  [dartx.endElement]() {
-    return this.endElement();
+  [dartx.endElement](...args) {
+    return this.endElement.apply(this, args);
   }
-  [dartx.endElementAt](offset) {
-    return this.endElementAt(offset);
+  [dartx.endElementAt](...args) {
+    return this.endElementAt.apply(this, args);
   }
-  [dartx.getCurrentTime]() {
-    return this.getCurrentTime();
+  [dartx.getCurrentTime](...args) {
+    return this.getCurrentTime.apply(this, args);
   }
-  [dartx.getSimpleDuration]() {
-    return this.getSimpleDuration();
+  [dartx.getSimpleDuration](...args) {
+    return this.getSimpleDuration.apply(this, args);
   }
-  [dartx.getStartTime]() {
-    return this.getStartTime();
+  [dartx.getStartTime](...args) {
+    return this.getStartTime.apply(this, args);
   }
   get [dartx.requiredExtensions]() {
     return this.requiredExtensions;
@@ -84651,8 +84651,8 @@
   get [dartx.systemLanguage]() {
     return this.systemLanguage;
   }
-  [dartx.hasExtension](extension) {
-    return this.hasExtension(extension);
+  [dartx.hasExtension](...args) {
+    return this.hasExtension.apply(this, args);
   }
 };
 dart.defineNamedConstructor(svg.AnimationElement, 'created');
@@ -85055,11 +85055,11 @@
   created() {
     super.created();
   }
-  [dartx.isPointInFill](point) {
-    return this.isPointInFill(point);
+  [dartx.isPointInFill](...args) {
+    return this.isPointInFill.apply(this, args);
   }
-  [dartx.isPointInStroke](point) {
-    return this.isPointInStroke(point);
+  [dartx.isPointInStroke](...args) {
+    return this.isPointInStroke.apply(this, args);
   }
 };
 dart.defineNamedConstructor(svg.GeometryElement, 'created');
@@ -86185,8 +86185,8 @@
   get [dartx.stdDeviationY]() {
     return this.stdDeviationY;
   }
-  [dartx.setStdDeviation](stdDeviationX, stdDeviationY) {
-    return this.setStdDeviation(stdDeviationX, stdDeviationY);
+  [dartx.setStdDeviation](...args) {
+    return this.setStdDeviation.apply(this, args);
   }
   get [dartx.height]() {
     return this.height;
@@ -87271,11 +87271,11 @@
   set [dartx.valueInSpecifiedUnits](value) {
     this.valueInSpecifiedUnits = value;
   }
-  [dartx.convertToSpecifiedUnits](unitType) {
-    return this.convertToSpecifiedUnits(unitType);
+  [dartx.convertToSpecifiedUnits](...args) {
+    return this.convertToSpecifiedUnits.apply(this, args);
   }
-  [dartx.newValueSpecifiedUnits](unitType, valueInSpecifiedUnits) {
-    return this.newValueSpecifiedUnits(unitType, valueInSpecifiedUnits);
+  [dartx.newValueSpecifiedUnits](...args) {
+    return this.newValueSpecifiedUnits.apply(this, args);
   }
 };
 dart.setSignature(svg.Length, {
@@ -87380,29 +87380,29 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [__setter__](index, newItem) {
-    return this.__setter__(index, newItem);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [dartx.appendItem](newItem) {
-    return this.appendItem(newItem);
+  [dartx.appendItem](...args) {
+    return this.appendItem.apply(this, args);
   }
-  [dartx.clear]() {
-    return this.clear();
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.getItem](index) {
-    return this.getItem(index);
+  [dartx.getItem](...args) {
+    return this.getItem.apply(this, args);
   }
-  [dartx.initialize](newItem) {
-    return this.initialize(newItem);
+  [dartx.initialize](...args) {
+    return this.initialize.apply(this, args);
   }
-  [dartx.insertItemBefore](newItem, index) {
-    return this.insertItemBefore(newItem, index);
+  [dartx.insertItemBefore](...args) {
+    return this.insertItemBefore.apply(this, args);
   }
-  [dartx.removeItem](index) {
-    return this.removeItem(index);
+  [dartx.removeItem](...args) {
+    return this.removeItem.apply(this, args);
   }
-  [dartx.replaceItem](newItem, index) {
-    return this.replaceItem(newItem, index);
+  [dartx.replaceItem](...args) {
+    return this.replaceItem.apply(this, args);
   }
 };
 svg.LengthList[dart.implements] = () => [ListOfLength()];
@@ -87634,11 +87634,11 @@
   get [dartx.refY]() {
     return this.refY;
   }
-  [dartx.setOrientToAngle](angle) {
-    return this.setOrientToAngle(angle);
+  [dartx.setOrientToAngle](...args) {
+    return this.setOrientToAngle.apply(this, args);
   }
-  [dartx.setOrientToAuto]() {
-    return this.setOrientToAuto();
+  [dartx.setOrientToAuto](...args) {
+    return this.setOrientToAuto.apply(this, args);
   }
   get [dartx.preserveAspectRatio]() {
     return this.preserveAspectRatio;
@@ -87744,8 +87744,8 @@
   get [dartx.systemLanguage]() {
     return this.systemLanguage;
   }
-  [dartx.hasExtension](extension) {
-    return this.hasExtension(extension);
+  [dartx.hasExtension](...args) {
+    return this.hasExtension.apply(this, args);
   }
 };
 dart.defineNamedConstructor(svg.MaskElement, 'created');
@@ -87829,38 +87829,38 @@
   set [dartx.f](value) {
     this.f = value;
   }
-  [dartx.flipX]() {
-    return this.flipX();
+  [dartx.flipX](...args) {
+    return this.flipX.apply(this, args);
   }
-  [dartx.flipY]() {
-    return this.flipY();
+  [dartx.flipY](...args) {
+    return this.flipY.apply(this, args);
   }
-  [dartx.inverse]() {
-    return this.inverse();
+  [dartx.inverse](...args) {
+    return this.inverse.apply(this, args);
   }
-  [dartx.multiply](secondMatrix) {
-    return this.multiply(secondMatrix);
+  [dartx.multiply](...args) {
+    return this.multiply.apply(this, args);
   }
-  [dartx.rotate](angle) {
-    return this.rotate(angle);
+  [dartx.rotate](...args) {
+    return this.rotate.apply(this, args);
   }
-  [dartx.rotateFromVector](x, y) {
-    return this.rotateFromVector(x, y);
+  [dartx.rotateFromVector](...args) {
+    return this.rotateFromVector.apply(this, args);
   }
-  [dartx.scale](scaleFactor) {
-    return this.scale(scaleFactor);
+  [dartx.scale](...args) {
+    return this.scale.apply(this, args);
   }
-  [dartx.scaleNonUniform](scaleFactorX, scaleFactorY) {
-    return this.scaleNonUniform(scaleFactorX, scaleFactorY);
+  [dartx.scaleNonUniform](...args) {
+    return this.scaleNonUniform.apply(this, args);
   }
-  [dartx.skewX](angle) {
-    return this.skewX(angle);
+  [dartx.skewX](...args) {
+    return this.skewX.apply(this, args);
   }
-  [dartx.skewY](angle) {
-    return this.skewY(angle);
+  [dartx.skewY](...args) {
+    return this.skewY.apply(this, args);
   }
-  [dartx.translate](x, y) {
-    return this.translate(x, y);
+  [dartx.translate](...args) {
+    return this.translate.apply(this, args);
   }
 };
 dart.setSignature(svg.Matrix, {
@@ -87986,29 +87986,29 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [__setter__](index, newItem) {
-    return this.__setter__(index, newItem);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [dartx.appendItem](newItem) {
-    return this.appendItem(newItem);
+  [dartx.appendItem](...args) {
+    return this.appendItem.apply(this, args);
   }
-  [dartx.clear]() {
-    return this.clear();
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.getItem](index) {
-    return this.getItem(index);
+  [dartx.getItem](...args) {
+    return this.getItem.apply(this, args);
   }
-  [dartx.initialize](newItem) {
-    return this.initialize(newItem);
+  [dartx.initialize](...args) {
+    return this.initialize.apply(this, args);
   }
-  [dartx.insertItemBefore](newItem, index) {
-    return this.insertItemBefore(newItem, index);
+  [dartx.insertItemBefore](...args) {
+    return this.insertItemBefore.apply(this, args);
   }
-  [dartx.removeItem](index) {
-    return this.removeItem(index);
+  [dartx.removeItem](...args) {
+    return this.removeItem.apply(this, args);
   }
-  [dartx.replaceItem](newItem, index) {
-    return this.replaceItem(newItem, index);
+  [dartx.replaceItem](...args) {
+    return this.replaceItem.apply(this, args);
   }
 };
 svg.NumberList[dart.implements] = () => [ListOfNumber()];
@@ -88095,71 +88095,71 @@
   get [dartx.pathSegList]() {
     return this.pathSegList;
   }
-  [dartx.createSvgPathSegArcAbs](x, y, r1, r2, angle, largeArcFlag, sweepFlag) {
-    return this.createSVGPathSegArcAbs(x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+  [dartx.createSvgPathSegArcAbs](...args) {
+    return this.createSVGPathSegArcAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegArcRel](x, y, r1, r2, angle, largeArcFlag, sweepFlag) {
-    return this.createSVGPathSegArcRel(x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+  [dartx.createSvgPathSegArcRel](...args) {
+    return this.createSVGPathSegArcRel.apply(this, args);
   }
-  [dartx.createSvgPathSegClosePath]() {
-    return this.createSVGPathSegClosePath();
+  [dartx.createSvgPathSegClosePath](...args) {
+    return this.createSVGPathSegClosePath.apply(this, args);
   }
-  [dartx.createSvgPathSegCurvetoCubicAbs](x, y, x1, y1, x2, y2) {
-    return this.createSVGPathSegCurvetoCubicAbs(x, y, x1, y1, x2, y2);
+  [dartx.createSvgPathSegCurvetoCubicAbs](...args) {
+    return this.createSVGPathSegCurvetoCubicAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegCurvetoCubicRel](x, y, x1, y1, x2, y2) {
-    return this.createSVGPathSegCurvetoCubicRel(x, y, x1, y1, x2, y2);
+  [dartx.createSvgPathSegCurvetoCubicRel](...args) {
+    return this.createSVGPathSegCurvetoCubicRel.apply(this, args);
   }
-  [dartx.createSvgPathSegCurvetoCubicSmoothAbs](x, y, x2, y2) {
-    return this.createSVGPathSegCurvetoCubicSmoothAbs(x, y, x2, y2);
+  [dartx.createSvgPathSegCurvetoCubicSmoothAbs](...args) {
+    return this.createSVGPathSegCurvetoCubicSmoothAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegCurvetoCubicSmoothRel](x, y, x2, y2) {
-    return this.createSVGPathSegCurvetoCubicSmoothRel(x, y, x2, y2);
+  [dartx.createSvgPathSegCurvetoCubicSmoothRel](...args) {
+    return this.createSVGPathSegCurvetoCubicSmoothRel.apply(this, args);
   }
-  [dartx.createSvgPathSegCurvetoQuadraticAbs](x, y, x1, y1) {
-    return this.createSVGPathSegCurvetoQuadraticAbs(x, y, x1, y1);
+  [dartx.createSvgPathSegCurvetoQuadraticAbs](...args) {
+    return this.createSVGPathSegCurvetoQuadraticAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegCurvetoQuadraticRel](x, y, x1, y1) {
-    return this.createSVGPathSegCurvetoQuadraticRel(x, y, x1, y1);
+  [dartx.createSvgPathSegCurvetoQuadraticRel](...args) {
+    return this.createSVGPathSegCurvetoQuadraticRel.apply(this, args);
   }
-  [dartx.createSvgPathSegCurvetoQuadraticSmoothAbs](x, y) {
-    return this.createSVGPathSegCurvetoQuadraticSmoothAbs(x, y);
+  [dartx.createSvgPathSegCurvetoQuadraticSmoothAbs](...args) {
+    return this.createSVGPathSegCurvetoQuadraticSmoothAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegCurvetoQuadraticSmoothRel](x, y) {
-    return this.createSVGPathSegCurvetoQuadraticSmoothRel(x, y);
+  [dartx.createSvgPathSegCurvetoQuadraticSmoothRel](...args) {
+    return this.createSVGPathSegCurvetoQuadraticSmoothRel.apply(this, args);
   }
-  [dartx.createSvgPathSegLinetoAbs](x, y) {
-    return this.createSVGPathSegLinetoAbs(x, y);
+  [dartx.createSvgPathSegLinetoAbs](...args) {
+    return this.createSVGPathSegLinetoAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegLinetoHorizontalAbs](x) {
-    return this.createSVGPathSegLinetoHorizontalAbs(x);
+  [dartx.createSvgPathSegLinetoHorizontalAbs](...args) {
+    return this.createSVGPathSegLinetoHorizontalAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegLinetoHorizontalRel](x) {
-    return this.createSVGPathSegLinetoHorizontalRel(x);
+  [dartx.createSvgPathSegLinetoHorizontalRel](...args) {
+    return this.createSVGPathSegLinetoHorizontalRel.apply(this, args);
   }
-  [dartx.createSvgPathSegLinetoRel](x, y) {
-    return this.createSVGPathSegLinetoRel(x, y);
+  [dartx.createSvgPathSegLinetoRel](...args) {
+    return this.createSVGPathSegLinetoRel.apply(this, args);
   }
-  [dartx.createSvgPathSegLinetoVerticalAbs](y) {
-    return this.createSVGPathSegLinetoVerticalAbs(y);
+  [dartx.createSvgPathSegLinetoVerticalAbs](...args) {
+    return this.createSVGPathSegLinetoVerticalAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegLinetoVerticalRel](y) {
-    return this.createSVGPathSegLinetoVerticalRel(y);
+  [dartx.createSvgPathSegLinetoVerticalRel](...args) {
+    return this.createSVGPathSegLinetoVerticalRel.apply(this, args);
   }
-  [dartx.createSvgPathSegMovetoAbs](x, y) {
-    return this.createSVGPathSegMovetoAbs(x, y);
+  [dartx.createSvgPathSegMovetoAbs](...args) {
+    return this.createSVGPathSegMovetoAbs.apply(this, args);
   }
-  [dartx.createSvgPathSegMovetoRel](x, y) {
-    return this.createSVGPathSegMovetoRel(x, y);
+  [dartx.createSvgPathSegMovetoRel](...args) {
+    return this.createSVGPathSegMovetoRel.apply(this, args);
   }
-  [dartx.getPathSegAtLength](distance) {
-    return this.getPathSegAtLength(distance);
+  [dartx.getPathSegAtLength](...args) {
+    return this.getPathSegAtLength.apply(this, args);
   }
-  [dartx.getPointAtLength](distance) {
-    return this.getPointAtLength(distance);
+  [dartx.getPointAtLength](...args) {
+    return this.getPointAtLength.apply(this, args);
   }
-  [dartx.getTotalLength]() {
-    return this.getTotalLength();
+  [dartx.getTotalLength](...args) {
+    return this.getTotalLength.apply(this, args);
   }
 };
 dart.defineNamedConstructor(svg.PathElement, 'created');
@@ -88971,29 +88971,29 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [__setter__](index, newItem) {
-    return this.__setter__(index, newItem);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [dartx.appendItem](newItem) {
-    return this.appendItem(newItem);
+  [dartx.appendItem](...args) {
+    return this.appendItem.apply(this, args);
   }
-  [dartx.clear]() {
-    return this.clear();
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.getItem](index) {
-    return this.getItem(index);
+  [dartx.getItem](...args) {
+    return this.getItem.apply(this, args);
   }
-  [dartx.initialize](newItem) {
-    return this.initialize(newItem);
+  [dartx.initialize](...args) {
+    return this.initialize.apply(this, args);
   }
-  [dartx.insertItemBefore](newItem, index) {
-    return this.insertItemBefore(newItem, index);
+  [dartx.insertItemBefore](...args) {
+    return this.insertItemBefore.apply(this, args);
   }
-  [dartx.removeItem](index) {
-    return this.removeItem(index);
+  [dartx.removeItem](...args) {
+    return this.removeItem.apply(this, args);
   }
-  [dartx.replaceItem](newItem, index) {
-    return this.replaceItem(newItem, index);
+  [dartx.replaceItem](...args) {
+    return this.replaceItem.apply(this, args);
   }
 };
 svg.PathSegList[dart.implements] = () => [ListOfPathSeg()];
@@ -89154,8 +89154,8 @@
   get [dartx.systemLanguage]() {
     return this.systemLanguage;
   }
-  [dartx.hasExtension](extension) {
-    return this.hasExtension(extension);
+  [dartx.hasExtension](...args) {
+    return this.hasExtension.apply(this, args);
   }
   get [dartx.href]() {
     return this.href;
@@ -89208,8 +89208,8 @@
   set [dartx.y](value) {
     this.y = value;
   }
-  [dartx.matrixTransform](matrix) {
-    return this.matrixTransform(matrix);
+  [dartx.matrixTransform](...args) {
+    return this.matrixTransform.apply(this, args);
   }
 };
 dart.setSignature(svg.Point, {
@@ -89242,29 +89242,29 @@
   get [dartx.numberOfItems]() {
     return this.numberOfItems;
   }
-  [__setter__](index, newItem) {
-    return this.__setter__(index, newItem);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [dartx.appendItem](newItem) {
-    return this.appendItem(newItem);
+  [dartx.appendItem](...args) {
+    return this.appendItem.apply(this, args);
   }
-  [dartx.clear]() {
-    return this.clear();
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.getItem](index) {
-    return this.getItem(index);
+  [dartx.getItem](...args) {
+    return this.getItem.apply(this, args);
   }
-  [dartx.initialize](newItem) {
-    return this.initialize(newItem);
+  [dartx.initialize](...args) {
+    return this.initialize.apply(this, args);
   }
-  [dartx.insertItemBefore](newItem, index) {
-    return this.insertItemBefore(newItem, index);
+  [dartx.insertItemBefore](...args) {
+    return this.insertItemBefore.apply(this, args);
   }
-  [dartx.removeItem](index) {
-    return this.removeItem(index);
+  [dartx.removeItem](...args) {
+    return this.removeItem.apply(this, args);
   }
-  [dartx.replaceItem](newItem, index) {
-    return this.replaceItem(newItem, index);
+  [dartx.replaceItem](...args) {
+    return this.replaceItem.apply(this, args);
   }
 };
 dart.setSignature(svg.PointList, {
@@ -89736,29 +89736,29 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [__setter__](index, newItem) {
-    return this.__setter__(index, newItem);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [dartx.appendItem](newItem) {
-    return this.appendItem(newItem);
+  [dartx.appendItem](...args) {
+    return this.appendItem.apply(this, args);
   }
-  [dartx.clear]() {
-    return this.clear();
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.getItem](index) {
-    return this.getItem(index);
+  [dartx.getItem](...args) {
+    return this.getItem.apply(this, args);
   }
-  [dartx.initialize](newItem) {
-    return this.initialize(newItem);
+  [dartx.initialize](...args) {
+    return this.initialize.apply(this, args);
   }
-  [dartx.insertItemBefore](item, index) {
-    return this.insertItemBefore(item, index);
+  [dartx.insertItemBefore](...args) {
+    return this.insertItemBefore.apply(this, args);
   }
-  [dartx.removeItem](index) {
-    return this.removeItem(index);
+  [dartx.removeItem](...args) {
+    return this.removeItem.apply(this, args);
   }
-  [dartx.replaceItem](newItem, index) {
-    return this.replaceItem(newItem, index);
+  [dartx.replaceItem](...args) {
+    return this.replaceItem.apply(this, args);
   }
 };
 svg.StringList[dart.implements] = () => [ListOfString()];
@@ -89985,74 +89985,74 @@
   get [dartx.y]() {
     return this.y;
   }
-  [dartx.animationsPaused]() {
-    return this.animationsPaused();
+  [dartx.animationsPaused](...args) {
+    return this.animationsPaused.apply(this, args);
   }
-  [dartx.checkEnclosure](element, rect) {
-    return this.checkEnclosure(element, rect);
+  [dartx.checkEnclosure](...args) {
+    return this.checkEnclosure.apply(this, args);
   }
-  [dartx.checkIntersection](element, rect) {
-    return this.checkIntersection(element, rect);
+  [dartx.checkIntersection](...args) {
+    return this.checkIntersection.apply(this, args);
   }
-  [dartx.createSvgAngle]() {
-    return this.createSVGAngle();
+  [dartx.createSvgAngle](...args) {
+    return this.createSVGAngle.apply(this, args);
   }
-  [dartx.createSvgLength]() {
-    return this.createSVGLength();
+  [dartx.createSvgLength](...args) {
+    return this.createSVGLength.apply(this, args);
   }
-  [dartx.createSvgMatrix]() {
-    return this.createSVGMatrix();
+  [dartx.createSvgMatrix](...args) {
+    return this.createSVGMatrix.apply(this, args);
   }
-  [dartx.createSvgNumber]() {
-    return this.createSVGNumber();
+  [dartx.createSvgNumber](...args) {
+    return this.createSVGNumber.apply(this, args);
   }
-  [dartx.createSvgPoint]() {
-    return this.createSVGPoint();
+  [dartx.createSvgPoint](...args) {
+    return this.createSVGPoint.apply(this, args);
   }
-  [dartx.createSvgRect]() {
-    return this.createSVGRect();
+  [dartx.createSvgRect](...args) {
+    return this.createSVGRect.apply(this, args);
   }
-  [dartx.createSvgTransform]() {
-    return this.createSVGTransform();
+  [dartx.createSvgTransform](...args) {
+    return this.createSVGTransform.apply(this, args);
   }
-  [dartx.createSvgTransformFromMatrix](matrix) {
-    return this.createSVGTransformFromMatrix(matrix);
+  [dartx.createSvgTransformFromMatrix](...args) {
+    return this.createSVGTransformFromMatrix.apply(this, args);
   }
-  [dartx.deselectAll]() {
-    return this.deselectAll();
+  [dartx.deselectAll](...args) {
+    return this.deselectAll.apply(this, args);
   }
-  [dartx.forceRedraw]() {
-    return this.forceRedraw();
+  [dartx.forceRedraw](...args) {
+    return this.forceRedraw.apply(this, args);
   }
-  [dartx.getCurrentTime]() {
-    return this.getCurrentTime();
+  [dartx.getCurrentTime](...args) {
+    return this.getCurrentTime.apply(this, args);
   }
-  [dartx.getElementById](elementId) {
-    return this.getElementById(elementId);
+  [dartx.getElementById](...args) {
+    return this.getElementById.apply(this, args);
   }
-  [dartx.getEnclosureList](rect, referenceElement) {
-    return this.getEnclosureList(rect, referenceElement);
+  [dartx.getEnclosureList](...args) {
+    return this.getEnclosureList.apply(this, args);
   }
-  [dartx.getIntersectionList](rect, referenceElement) {
-    return this.getIntersectionList(rect, referenceElement);
+  [dartx.getIntersectionList](...args) {
+    return this.getIntersectionList.apply(this, args);
   }
-  [dartx.pauseAnimations]() {
-    return this.pauseAnimations();
+  [dartx.pauseAnimations](...args) {
+    return this.pauseAnimations.apply(this, args);
   }
-  [dartx.setCurrentTime](seconds) {
-    return this.setCurrentTime(seconds);
+  [dartx.setCurrentTime](...args) {
+    return this.setCurrentTime.apply(this, args);
   }
-  [dartx.suspendRedraw](maxWaitMilliseconds) {
-    return this.suspendRedraw(maxWaitMilliseconds);
+  [dartx.suspendRedraw](...args) {
+    return this.suspendRedraw.apply(this, args);
   }
-  [dartx.unpauseAnimations]() {
-    return this.unpauseAnimations();
+  [dartx.unpauseAnimations](...args) {
+    return this.unpauseAnimations.apply(this, args);
   }
-  [dartx.unsuspendRedraw](suspendHandleId) {
-    return this.unsuspendRedraw(suspendHandleId);
+  [dartx.unsuspendRedraw](...args) {
+    return this.unsuspendRedraw.apply(this, args);
   }
-  [dartx.unsuspendRedrawAll]() {
-    return this.unsuspendRedrawAll();
+  [dartx.unsuspendRedrawAll](...args) {
+    return this.unsuspendRedrawAll.apply(this, args);
   }
   get [dartx.preserveAspectRatio]() {
     return this.preserveAspectRatio;
@@ -90205,32 +90205,32 @@
   get [dartx.textLength]() {
     return this.textLength;
   }
-  [dartx.getCharNumAtPosition](point) {
-    return this.getCharNumAtPosition(point);
+  [dartx.getCharNumAtPosition](...args) {
+    return this.getCharNumAtPosition.apply(this, args);
   }
-  [dartx.getComputedTextLength]() {
-    return this.getComputedTextLength();
+  [dartx.getComputedTextLength](...args) {
+    return this.getComputedTextLength.apply(this, args);
   }
-  [dartx.getEndPositionOfChar](charnum) {
-    return this.getEndPositionOfChar(charnum);
+  [dartx.getEndPositionOfChar](...args) {
+    return this.getEndPositionOfChar.apply(this, args);
   }
-  [dartx.getExtentOfChar](charnum) {
-    return this.getExtentOfChar(charnum);
+  [dartx.getExtentOfChar](...args) {
+    return this.getExtentOfChar.apply(this, args);
   }
-  [dartx.getNumberOfChars]() {
-    return this.getNumberOfChars();
+  [dartx.getNumberOfChars](...args) {
+    return this.getNumberOfChars.apply(this, args);
   }
-  [dartx.getRotationOfChar](charnum) {
-    return this.getRotationOfChar(charnum);
+  [dartx.getRotationOfChar](...args) {
+    return this.getRotationOfChar.apply(this, args);
   }
-  [dartx.getStartPositionOfChar](charnum) {
-    return this.getStartPositionOfChar(charnum);
+  [dartx.getStartPositionOfChar](...args) {
+    return this.getStartPositionOfChar.apply(this, args);
   }
-  [dartx.getSubStringLength](charnum, nchars) {
-    return this.getSubStringLength(charnum, nchars);
+  [dartx.getSubStringLength](...args) {
+    return this.getSubStringLength.apply(this, args);
   }
-  [dartx.selectSubString](charnum, nchars) {
-    return this.selectSubString(charnum, nchars);
+  [dartx.selectSubString](...args) {
+    return this.selectSubString.apply(this, args);
   }
 };
 dart.defineNamedConstructor(svg.TextContentElement, 'created');
@@ -90497,23 +90497,23 @@
   get [dartx.type]() {
     return this.type;
   }
-  [dartx.setMatrix](matrix) {
-    return this.setMatrix(matrix);
+  [dartx.setMatrix](...args) {
+    return this.setMatrix.apply(this, args);
   }
-  [dartx.setRotate](angle, cx, cy) {
-    return this.setRotate(angle, cx, cy);
+  [dartx.setRotate](...args) {
+    return this.setRotate.apply(this, args);
   }
-  [dartx.setScale](sx, sy) {
-    return this.setScale(sx, sy);
+  [dartx.setScale](...args) {
+    return this.setScale.apply(this, args);
   }
-  [dartx.setSkewX](angle) {
-    return this.setSkewX(angle);
+  [dartx.setSkewX](...args) {
+    return this.setSkewX.apply(this, args);
   }
-  [dartx.setSkewY](angle) {
-    return this.setSkewY(angle);
+  [dartx.setSkewY](...args) {
+    return this.setSkewY.apply(this, args);
   }
-  [dartx.setTranslate](tx, ty) {
-    return this.setTranslate(tx, ty);
+  [dartx.setTranslate](...args) {
+    return this.setTranslate.apply(this, args);
   }
 };
 dart.setSignature(svg.Transform, {
@@ -90614,35 +90614,35 @@
   [dartx.elementAt](index) {
     return this[dartx._get](index);
   }
-  [__setter__](index, newItem) {
-    return this.__setter__(index, newItem);
+  [__setter__](...args) {
+    return this.__setter__.apply(this, args);
   }
-  [dartx.appendItem](newItem) {
-    return this.appendItem(newItem);
+  [dartx.appendItem](...args) {
+    return this.appendItem.apply(this, args);
   }
-  [dartx.clear]() {
-    return this.clear();
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.consolidate]() {
-    return this.consolidate();
+  [dartx.consolidate](...args) {
+    return this.consolidate.apply(this, args);
   }
-  [dartx.createSvgTransformFromMatrix](matrix) {
-    return this.createSVGTransformFromMatrix(matrix);
+  [dartx.createSvgTransformFromMatrix](...args) {
+    return this.createSVGTransformFromMatrix.apply(this, args);
   }
-  [dartx.getItem](index) {
-    return this.getItem(index);
+  [dartx.getItem](...args) {
+    return this.getItem.apply(this, args);
   }
-  [dartx.initialize](newItem) {
-    return this.initialize(newItem);
+  [dartx.initialize](...args) {
+    return this.initialize.apply(this, args);
   }
-  [dartx.insertItemBefore](newItem, index) {
-    return this.insertItemBefore(newItem, index);
+  [dartx.insertItemBefore](...args) {
+    return this.insertItemBefore.apply(this, args);
   }
-  [dartx.removeItem](index) {
-    return this.removeItem(index);
+  [dartx.removeItem](...args) {
+    return this.removeItem.apply(this, args);
   }
-  [dartx.replaceItem](newItem, index) {
-    return this.replaceItem(newItem, index);
+  [dartx.replaceItem](...args) {
+    return this.replaceItem.apply(this, args);
   }
 };
 svg.TransformList[dart.implements] = () => [ListOfTransform()];
@@ -91050,11 +91050,11 @@
   get [dartx.numberOfOutputs]() {
     return this.numberOfOutputs;
   }
-  [_connect](destination, output, input) {
-    return this.connect(destination, output, input);
+  [_connect](...args) {
+    return this.connect.apply(this, args);
   }
-  [dartx.disconnect](output) {
-    return this.disconnect(output);
+  [dartx.disconnect](...args) {
+    return this.disconnect.apply(this, args);
   }
   [dartx.connectNode](destination, output, input) {
     if (output === void 0) output = 0;
@@ -91126,17 +91126,17 @@
   set [dartx.smoothingTimeConstant](value) {
     this.smoothingTimeConstant = value;
   }
-  [dartx.getByteFrequencyData](array) {
-    return this.getByteFrequencyData(array);
+  [dartx.getByteFrequencyData](...args) {
+    return this.getByteFrequencyData.apply(this, args);
   }
-  [dartx.getByteTimeDomainData](array) {
-    return this.getByteTimeDomainData(array);
+  [dartx.getByteTimeDomainData](...args) {
+    return this.getByteTimeDomainData.apply(this, args);
   }
-  [dartx.getFloatFrequencyData](array) {
-    return this.getFloatFrequencyData(array);
+  [dartx.getFloatFrequencyData](...args) {
+    return this.getFloatFrequencyData.apply(this, args);
   }
-  [dartx.getFloatTimeDomainData](array) {
-    return this.getFloatTimeDomainData(array);
+  [dartx.getFloatTimeDomainData](...args) {
+    return this.getFloatTimeDomainData.apply(this, args);
   }
 };
 dart.setSignature(web_audio.AnalyserNode, {
@@ -91180,8 +91180,8 @@
   get [dartx.sampleRate]() {
     return this.sampleRate;
   }
-  [dartx.getChannelData](channelIndex) {
-    return this.getChannelData(channelIndex);
+  [dartx.getChannelData](...args) {
+    return this.getChannelData.apply(this, args);
   }
 };
 dart.setSignature(web_audio.AudioBuffer, {
@@ -91343,59 +91343,59 @@
   get [dartx.sampleRate]() {
     return this.sampleRate;
   }
-  [dartx.createAnalyser]() {
-    return this.createAnalyser();
+  [dartx.createAnalyser](...args) {
+    return this.createAnalyser.apply(this, args);
   }
-  [dartx.createBiquadFilter]() {
-    return this.createBiquadFilter();
+  [dartx.createBiquadFilter](...args) {
+    return this.createBiquadFilter.apply(this, args);
   }
-  [dartx.createBuffer](numberOfChannels, numberOfFrames, sampleRate) {
-    return this.createBuffer(numberOfChannels, numberOfFrames, sampleRate);
+  [dartx.createBuffer](...args) {
+    return this.createBuffer.apply(this, args);
   }
-  [dartx.createBufferSource]() {
-    return this.createBufferSource();
+  [dartx.createBufferSource](...args) {
+    return this.createBufferSource.apply(this, args);
   }
-  [dartx.createChannelMerger](numberOfInputs) {
-    return this.createChannelMerger(numberOfInputs);
+  [dartx.createChannelMerger](...args) {
+    return this.createChannelMerger.apply(this, args);
   }
-  [dartx.createChannelSplitter](numberOfOutputs) {
-    return this.createChannelSplitter(numberOfOutputs);
+  [dartx.createChannelSplitter](...args) {
+    return this.createChannelSplitter.apply(this, args);
   }
-  [dartx.createConvolver]() {
-    return this.createConvolver();
+  [dartx.createConvolver](...args) {
+    return this.createConvolver.apply(this, args);
   }
-  [dartx.createDelay](maxDelayTime) {
-    return this.createDelay(maxDelayTime);
+  [dartx.createDelay](...args) {
+    return this.createDelay.apply(this, args);
   }
-  [dartx.createDynamicsCompressor]() {
-    return this.createDynamicsCompressor();
+  [dartx.createDynamicsCompressor](...args) {
+    return this.createDynamicsCompressor.apply(this, args);
   }
-  [dartx.createMediaElementSource](mediaElement) {
-    return this.createMediaElementSource(mediaElement);
+  [dartx.createMediaElementSource](...args) {
+    return this.createMediaElementSource.apply(this, args);
   }
-  [dartx.createMediaStreamDestination]() {
-    return this.createMediaStreamDestination();
+  [dartx.createMediaStreamDestination](...args) {
+    return this.createMediaStreamDestination.apply(this, args);
   }
-  [dartx.createMediaStreamSource](mediaStream) {
-    return this.createMediaStreamSource(mediaStream);
+  [dartx.createMediaStreamSource](...args) {
+    return this.createMediaStreamSource.apply(this, args);
   }
-  [dartx.createOscillator]() {
-    return this.createOscillator();
+  [dartx.createOscillator](...args) {
+    return this.createOscillator.apply(this, args);
   }
-  [dartx.createPanner]() {
-    return this.createPanner();
+  [dartx.createPanner](...args) {
+    return this.createPanner.apply(this, args);
   }
-  [dartx.createPeriodicWave](real, imag) {
-    return this.createPeriodicWave(real, imag);
+  [dartx.createPeriodicWave](...args) {
+    return this.createPeriodicWave.apply(this, args);
   }
-  [dartx.createWaveShaper]() {
-    return this.createWaveShaper();
+  [dartx.createWaveShaper](...args) {
+    return this.createWaveShaper.apply(this, args);
   }
-  [_decodeAudioData](audioData, successCallback, errorCallback) {
-    return this.decodeAudioData(audioData, successCallback, errorCallback);
+  [_decodeAudioData](...args) {
+    return this.decodeAudioData.apply(this, args);
   }
-  [dartx.startRendering]() {
-    return this.startRendering();
+  [dartx.startRendering](...args) {
+    return this.startRendering.apply(this, args);
   }
   get [dartx.onComplete]() {
     return web_audio.AudioContext.completeEvent.forTarget(this);
@@ -91516,14 +91516,14 @@
   set [dartx.speedOfSound](value) {
     this.speedOfSound = value;
   }
-  [dartx.setOrientation](x, y, z, xUp, yUp, zUp) {
-    return this.setOrientation(x, y, z, xUp, yUp, zUp);
+  [dartx.setOrientation](...args) {
+    return this.setOrientation.apply(this, args);
   }
-  [dartx.setPosition](x, y, z) {
-    return this.setPosition(x, y, z);
+  [dartx.setPosition](...args) {
+    return this.setPosition.apply(this, args);
   }
-  [dartx.setVelocity](x, y, z) {
-    return this.setVelocity(x, y, z);
+  [dartx.setVelocity](...args) {
+    return this.setVelocity.apply(this, args);
   }
 };
 dart.setSignature(web_audio.AudioListener, {
@@ -91562,23 +91562,23 @@
   set [dartx.value](value) {
     this.value = value;
   }
-  [dartx.cancelScheduledValues](startTime) {
-    return this.cancelScheduledValues(startTime);
+  [dartx.cancelScheduledValues](...args) {
+    return this.cancelScheduledValues.apply(this, args);
   }
-  [dartx.exponentialRampToValueAtTime](value, time) {
-    return this.exponentialRampToValueAtTime(value, time);
+  [dartx.exponentialRampToValueAtTime](...args) {
+    return this.exponentialRampToValueAtTime.apply(this, args);
   }
-  [dartx.linearRampToValueAtTime](value, time) {
-    return this.linearRampToValueAtTime(value, time);
+  [dartx.linearRampToValueAtTime](...args) {
+    return this.linearRampToValueAtTime.apply(this, args);
   }
-  [dartx.setTargetAtTime](target, time, timeConstant) {
-    return this.setTargetAtTime(target, time, timeConstant);
+  [dartx.setTargetAtTime](...args) {
+    return this.setTargetAtTime.apply(this, args);
   }
-  [dartx.setValueAtTime](value, time) {
-    return this.setValueAtTime(value, time);
+  [dartx.setValueAtTime](...args) {
+    return this.setValueAtTime.apply(this, args);
   }
-  [dartx.setValueCurveAtTime](values, time, duration) {
-    return this.setValueCurveAtTime(values, time, duration);
+  [dartx.setValueCurveAtTime](...args) {
+    return this.setValueCurveAtTime.apply(this, args);
   }
 };
 dart.setSignature(web_audio.AudioParam, {
@@ -91655,8 +91655,8 @@
   set [dartx.type](value) {
     this.type = value;
   }
-  [dartx.getFrequencyResponse](frequencyHz, magResponse, phaseResponse) {
-    return this.getFrequencyResponse(frequencyHz, magResponse, phaseResponse);
+  [dartx.getFrequencyResponse](...args) {
+    return this.getFrequencyResponse.apply(this, args);
   }
 };
 dart.setSignature(web_audio.BiquadFilterNode, {
@@ -91907,20 +91907,20 @@
   set [dartx.type](value) {
     this.type = value;
   }
-  [dartx.noteOff](when) {
-    return this.noteOff(when);
+  [dartx.noteOff](...args) {
+    return this.noteOff.apply(this, args);
   }
-  [dartx.noteOn](when) {
-    return this.noteOn(when);
+  [dartx.noteOn](...args) {
+    return this.noteOn.apply(this, args);
   }
-  [dartx.setPeriodicWave](periodicWave) {
-    return this.setPeriodicWave(periodicWave);
+  [dartx.setPeriodicWave](...args) {
+    return this.setPeriodicWave.apply(this, args);
   }
-  [dartx.start](when) {
-    return this.start(when);
+  [dartx.start](...args) {
+    return this.start.apply(this, args);
   }
-  [dartx.stop](when) {
-    return this.stop(when);
+  [dartx.stop](...args) {
+    return this.stop.apply(this, args);
   }
   get [dartx.onEnded]() {
     return web_audio.OscillatorNode.endedEvent.forTarget(this);
@@ -92011,14 +92011,14 @@
   set [dartx.rolloffFactor](value) {
     this.rolloffFactor = value;
   }
-  [dartx.setOrientation](x, y, z) {
-    return this.setOrientation(x, y, z);
+  [dartx.setOrientation](...args) {
+    return this.setOrientation.apply(this, args);
   }
-  [dartx.setPosition](x, y, z) {
-    return this.setPosition(x, y, z);
+  [dartx.setPosition](...args) {
+    return this.setPosition.apply(this, args);
   }
-  [dartx.setVelocity](x, y, z) {
-    return this.setVelocity(x, y, z);
+  [dartx.setVelocity](...args) {
+    return this.setVelocity.apply(this, args);
   }
 };
 dart.setSignature(web_audio.PannerNode, {
@@ -92063,8 +92063,8 @@
   get [dartx.bufferSize]() {
     return this.bufferSize;
   }
-  [dartx.setEventListener](eventListener) {
-    return this.setEventListener(eventListener);
+  [dartx.setEventListener](...args) {
+    return this.setEventListener.apply(this, args);
   }
   get [dartx.onAudioProcess]() {
     return web_audio.ScriptProcessorNode.audioProcessEvent.forTarget(this);
@@ -92295,323 +92295,323 @@
   get [dartx.drawingBufferWidth]() {
     return this.drawingBufferWidth;
   }
-  [dartx.activeTexture](texture) {
-    return this.activeTexture(texture);
+  [dartx.activeTexture](...args) {
+    return this.activeTexture.apply(this, args);
   }
-  [dartx.attachShader](program, shader) {
-    return this.attachShader(program, shader);
+  [dartx.attachShader](...args) {
+    return this.attachShader.apply(this, args);
   }
-  [dartx.bindAttribLocation](program, index, name) {
-    return this.bindAttribLocation(program, index, name);
+  [dartx.bindAttribLocation](...args) {
+    return this.bindAttribLocation.apply(this, args);
   }
-  [dartx.bindBuffer](target, buffer) {
-    return this.bindBuffer(target, buffer);
+  [dartx.bindBuffer](...args) {
+    return this.bindBuffer.apply(this, args);
   }
-  [dartx.bindFramebuffer](target, framebuffer) {
-    return this.bindFramebuffer(target, framebuffer);
+  [dartx.bindFramebuffer](...args) {
+    return this.bindFramebuffer.apply(this, args);
   }
-  [dartx.bindRenderbuffer](target, renderbuffer) {
-    return this.bindRenderbuffer(target, renderbuffer);
+  [dartx.bindRenderbuffer](...args) {
+    return this.bindRenderbuffer.apply(this, args);
   }
-  [dartx.bindTexture](target, texture) {
-    return this.bindTexture(target, texture);
+  [dartx.bindTexture](...args) {
+    return this.bindTexture.apply(this, args);
   }
-  [dartx.blendColor](red, green, blue, alpha) {
-    return this.blendColor(red, green, blue, alpha);
+  [dartx.blendColor](...args) {
+    return this.blendColor.apply(this, args);
   }
-  [dartx.blendEquation](mode) {
-    return this.blendEquation(mode);
+  [dartx.blendEquation](...args) {
+    return this.blendEquation.apply(this, args);
   }
-  [dartx.blendEquationSeparate](modeRGB, modeAlpha) {
-    return this.blendEquationSeparate(modeRGB, modeAlpha);
+  [dartx.blendEquationSeparate](...args) {
+    return this.blendEquationSeparate.apply(this, args);
   }
-  [dartx.blendFunc](sfactor, dfactor) {
-    return this.blendFunc(sfactor, dfactor);
+  [dartx.blendFunc](...args) {
+    return this.blendFunc.apply(this, args);
   }
-  [dartx.blendFuncSeparate](srcRGB, dstRGB, srcAlpha, dstAlpha) {
-    return this.blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
+  [dartx.blendFuncSeparate](...args) {
+    return this.blendFuncSeparate.apply(this, args);
   }
-  [dartx.bufferByteData](target, data, usage) {
-    return this.bufferData(target, data, usage);
+  [dartx.bufferByteData](...args) {
+    return this.bufferData.apply(this, args);
   }
-  [dartx.bufferData](target, data_OR_size, usage) {
-    return this.bufferData(target, data_OR_size, usage);
+  [dartx.bufferData](...args) {
+    return this.bufferData.apply(this, args);
   }
-  [dartx.bufferDataTyped](target, data, usage) {
-    return this.bufferData(target, data, usage);
+  [dartx.bufferDataTyped](...args) {
+    return this.bufferData.apply(this, args);
   }
-  [dartx.bufferSubByteData](target, offset, data) {
-    return this.bufferSubData(target, offset, data);
+  [dartx.bufferSubByteData](...args) {
+    return this.bufferSubData.apply(this, args);
   }
-  [dartx.bufferSubData](target, offset, data) {
-    return this.bufferSubData(target, offset, data);
+  [dartx.bufferSubData](...args) {
+    return this.bufferSubData.apply(this, args);
   }
-  [dartx.bufferSubDataTyped](target, offset, data) {
-    return this.bufferSubData(target, offset, data);
+  [dartx.bufferSubDataTyped](...args) {
+    return this.bufferSubData.apply(this, args);
   }
-  [dartx.checkFramebufferStatus](target) {
-    return this.checkFramebufferStatus(target);
+  [dartx.checkFramebufferStatus](...args) {
+    return this.checkFramebufferStatus.apply(this, args);
   }
-  [dartx.clear](mask) {
-    return this.clear(mask);
+  [dartx.clear](...args) {
+    return this.clear.apply(this, args);
   }
-  [dartx.clearColor](red, green, blue, alpha) {
-    return this.clearColor(red, green, blue, alpha);
+  [dartx.clearColor](...args) {
+    return this.clearColor.apply(this, args);
   }
-  [dartx.clearDepth](depth) {
-    return this.clearDepth(depth);
+  [dartx.clearDepth](...args) {
+    return this.clearDepth.apply(this, args);
   }
-  [dartx.clearStencil](s) {
-    return this.clearStencil(s);
+  [dartx.clearStencil](...args) {
+    return this.clearStencil.apply(this, args);
   }
-  [dartx.colorMask](red, green, blue, alpha) {
-    return this.colorMask(red, green, blue, alpha);
+  [dartx.colorMask](...args) {
+    return this.colorMask.apply(this, args);
   }
-  [dartx.compileShader](shader) {
-    return this.compileShader(shader);
+  [dartx.compileShader](...args) {
+    return this.compileShader.apply(this, args);
   }
-  [dartx.compressedTexImage2D](target, level, internalformat, width, height, border, data) {
-    return this.compressedTexImage2D(target, level, internalformat, width, height, border, data);
+  [dartx.compressedTexImage2D](...args) {
+    return this.compressedTexImage2D.apply(this, args);
   }
-  [dartx.compressedTexSubImage2D](target, level, xoffset, yoffset, width, height, format, data) {
-    return this.compressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, data);
+  [dartx.compressedTexSubImage2D](...args) {
+    return this.compressedTexSubImage2D.apply(this, args);
   }
-  [dartx.copyTexImage2D](target, level, internalformat, x, y, width, height, border) {
-    return this.copyTexImage2D(target, level, internalformat, x, y, width, height, border);
+  [dartx.copyTexImage2D](...args) {
+    return this.copyTexImage2D.apply(this, args);
   }
-  [dartx.copyTexSubImage2D](target, level, xoffset, yoffset, x, y, width, height) {
-    return this.copyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+  [dartx.copyTexSubImage2D](...args) {
+    return this.copyTexSubImage2D.apply(this, args);
   }
-  [dartx.createBuffer]() {
-    return this.createBuffer();
+  [dartx.createBuffer](...args) {
+    return this.createBuffer.apply(this, args);
   }
-  [dartx.createFramebuffer]() {
-    return this.createFramebuffer();
+  [dartx.createFramebuffer](...args) {
+    return this.createFramebuffer.apply(this, args);
   }
-  [dartx.createProgram]() {
-    return this.createProgram();
+  [dartx.createProgram](...args) {
+    return this.createProgram.apply(this, args);
   }
-  [dartx.createRenderbuffer]() {
-    return this.createRenderbuffer();
+  [dartx.createRenderbuffer](...args) {
+    return this.createRenderbuffer.apply(this, args);
   }
-  [dartx.createShader](type) {
-    return this.createShader(type);
+  [dartx.createShader](...args) {
+    return this.createShader.apply(this, args);
   }
-  [dartx.createTexture]() {
-    return this.createTexture();
+  [dartx.createTexture](...args) {
+    return this.createTexture.apply(this, args);
   }
-  [dartx.cullFace](mode) {
-    return this.cullFace(mode);
+  [dartx.cullFace](...args) {
+    return this.cullFace.apply(this, args);
   }
-  [dartx.deleteBuffer](buffer) {
-    return this.deleteBuffer(buffer);
+  [dartx.deleteBuffer](...args) {
+    return this.deleteBuffer.apply(this, args);
   }
-  [dartx.deleteFramebuffer](framebuffer) {
-    return this.deleteFramebuffer(framebuffer);
+  [dartx.deleteFramebuffer](...args) {
+    return this.deleteFramebuffer.apply(this, args);
   }
-  [dartx.deleteProgram](program) {
-    return this.deleteProgram(program);
+  [dartx.deleteProgram](...args) {
+    return this.deleteProgram.apply(this, args);
   }
-  [dartx.deleteRenderbuffer](renderbuffer) {
-    return this.deleteRenderbuffer(renderbuffer);
+  [dartx.deleteRenderbuffer](...args) {
+    return this.deleteRenderbuffer.apply(this, args);
   }
-  [dartx.deleteShader](shader) {
-    return this.deleteShader(shader);
+  [dartx.deleteShader](...args) {
+    return this.deleteShader.apply(this, args);
   }
-  [dartx.deleteTexture](texture) {
-    return this.deleteTexture(texture);
+  [dartx.deleteTexture](...args) {
+    return this.deleteTexture.apply(this, args);
   }
-  [dartx.depthFunc](func) {
-    return this.depthFunc(func);
+  [dartx.depthFunc](...args) {
+    return this.depthFunc.apply(this, args);
   }
-  [dartx.depthMask](flag) {
-    return this.depthMask(flag);
+  [dartx.depthMask](...args) {
+    return this.depthMask.apply(this, args);
   }
-  [dartx.depthRange](zNear, zFar) {
-    return this.depthRange(zNear, zFar);
+  [dartx.depthRange](...args) {
+    return this.depthRange.apply(this, args);
   }
-  [dartx.detachShader](program, shader) {
-    return this.detachShader(program, shader);
+  [dartx.detachShader](...args) {
+    return this.detachShader.apply(this, args);
   }
-  [dartx.disable](cap) {
-    return this.disable(cap);
+  [dartx.disable](...args) {
+    return this.disable.apply(this, args);
   }
-  [dartx.disableVertexAttribArray](index) {
-    return this.disableVertexAttribArray(index);
+  [dartx.disableVertexAttribArray](...args) {
+    return this.disableVertexAttribArray.apply(this, args);
   }
-  [dartx.drawArrays](mode, first, count) {
-    return this.drawArrays(mode, first, count);
+  [dartx.drawArrays](...args) {
+    return this.drawArrays.apply(this, args);
   }
-  [dartx.drawElements](mode, count, type, offset) {
-    return this.drawElements(mode, count, type, offset);
+  [dartx.drawElements](...args) {
+    return this.drawElements.apply(this, args);
   }
-  [dartx.enable](cap) {
-    return this.enable(cap);
+  [dartx.enable](...args) {
+    return this.enable.apply(this, args);
   }
-  [dartx.enableVertexAttribArray](index) {
-    return this.enableVertexAttribArray(index);
+  [dartx.enableVertexAttribArray](...args) {
+    return this.enableVertexAttribArray.apply(this, args);
   }
-  [dartx.finish]() {
-    return this.finish();
+  [dartx.finish](...args) {
+    return this.finish.apply(this, args);
   }
-  [dartx.flush]() {
-    return this.flush();
+  [dartx.flush](...args) {
+    return this.flush.apply(this, args);
   }
-  [dartx.framebufferRenderbuffer](target, attachment, renderbuffertarget, renderbuffer) {
-    return this.framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+  [dartx.framebufferRenderbuffer](...args) {
+    return this.framebufferRenderbuffer.apply(this, args);
   }
-  [dartx.framebufferTexture2D](target, attachment, textarget, texture, level) {
-    return this.framebufferTexture2D(target, attachment, textarget, texture, level);
+  [dartx.framebufferTexture2D](...args) {
+    return this.framebufferTexture2D.apply(this, args);
   }
-  [dartx.frontFace](mode) {
-    return this.frontFace(mode);
+  [dartx.frontFace](...args) {
+    return this.frontFace.apply(this, args);
   }
-  [dartx.generateMipmap](target) {
-    return this.generateMipmap(target);
+  [dartx.generateMipmap](...args) {
+    return this.generateMipmap.apply(this, args);
   }
-  [dartx.getActiveAttrib](program, index) {
-    return this.getActiveAttrib(program, index);
+  [dartx.getActiveAttrib](...args) {
+    return this.getActiveAttrib.apply(this, args);
   }
-  [dartx.getActiveUniform](program, index) {
-    return this.getActiveUniform(program, index);
+  [dartx.getActiveUniform](...args) {
+    return this.getActiveUniform.apply(this, args);
   }
-  [dartx.getAttachedShaders](program) {
-    return this.getAttachedShaders(program);
+  [dartx.getAttachedShaders](...args) {
+    return this.getAttachedShaders.apply(this, args);
   }
-  [dartx.getAttribLocation](program, name) {
-    return this.getAttribLocation(program, name);
+  [dartx.getAttribLocation](...args) {
+    return this.getAttribLocation.apply(this, args);
   }
-  [dartx.getBufferParameter](target, pname) {
-    return this.getBufferParameter(target, pname);
+  [dartx.getBufferParameter](...args) {
+    return this.getBufferParameter.apply(this, args);
   }
   [dartx.getContextAttributes]() {
     return web_gl.ContextAttributes._check(html_common.convertNativeToDart_ContextAttributes(this[_getContextAttributes_1]()));
   }
-  [_getContextAttributes_1]() {
-    return this.getContextAttributes();
+  [_getContextAttributes_1](...args) {
+    return this.getContextAttributes.apply(this, args);
   }
-  [dartx.getError]() {
-    return this.getError();
+  [dartx.getError](...args) {
+    return this.getError.apply(this, args);
   }
-  [dartx.getExtension](name) {
-    return this.getExtension(name);
+  [dartx.getExtension](...args) {
+    return this.getExtension.apply(this, args);
   }
-  [dartx.getFramebufferAttachmentParameter](target, attachment, pname) {
-    return this.getFramebufferAttachmentParameter(target, attachment, pname);
+  [dartx.getFramebufferAttachmentParameter](...args) {
+    return this.getFramebufferAttachmentParameter.apply(this, args);
   }
-  [dartx.getParameter](pname) {
-    return this.getParameter(pname);
+  [dartx.getParameter](...args) {
+    return this.getParameter.apply(this, args);
   }
-  [dartx.getProgramInfoLog](program) {
-    return this.getProgramInfoLog(program);
+  [dartx.getProgramInfoLog](...args) {
+    return this.getProgramInfoLog.apply(this, args);
   }
-  [dartx.getProgramParameter](program, pname) {
-    return this.getProgramParameter(program, pname);
+  [dartx.getProgramParameter](...args) {
+    return this.getProgramParameter.apply(this, args);
   }
-  [dartx.getRenderbufferParameter](target, pname) {
-    return this.getRenderbufferParameter(target, pname);
+  [dartx.getRenderbufferParameter](...args) {
+    return this.getRenderbufferParameter.apply(this, args);
   }
-  [dartx.getShaderInfoLog](shader) {
-    return this.getShaderInfoLog(shader);
+  [dartx.getShaderInfoLog](...args) {
+    return this.getShaderInfoLog.apply(this, args);
   }
-  [dartx.getShaderParameter](shader, pname) {
-    return this.getShaderParameter(shader, pname);
+  [dartx.getShaderParameter](...args) {
+    return this.getShaderParameter.apply(this, args);
   }
-  [dartx.getShaderPrecisionFormat](shadertype, precisiontype) {
-    return this.getShaderPrecisionFormat(shadertype, precisiontype);
+  [dartx.getShaderPrecisionFormat](...args) {
+    return this.getShaderPrecisionFormat.apply(this, args);
   }
-  [dartx.getShaderSource](shader) {
-    return this.getShaderSource(shader);
+  [dartx.getShaderSource](...args) {
+    return this.getShaderSource.apply(this, args);
   }
-  [dartx.getSupportedExtensions]() {
-    return this.getSupportedExtensions();
+  [dartx.getSupportedExtensions](...args) {
+    return this.getSupportedExtensions.apply(this, args);
   }
-  [dartx.getTexParameter](target, pname) {
-    return this.getTexParameter(target, pname);
+  [dartx.getTexParameter](...args) {
+    return this.getTexParameter.apply(this, args);
   }
-  [dartx.getUniform](program, location) {
-    return this.getUniform(program, location);
+  [dartx.getUniform](...args) {
+    return this.getUniform.apply(this, args);
   }
-  [dartx.getUniformLocation](program, name) {
-    return this.getUniformLocation(program, name);
+  [dartx.getUniformLocation](...args) {
+    return this.getUniformLocation.apply(this, args);
   }
-  [dartx.getVertexAttrib](index, pname) {
-    return this.getVertexAttrib(index, pname);
+  [dartx.getVertexAttrib](...args) {
+    return this.getVertexAttrib.apply(this, args);
   }
-  [dartx.getVertexAttribOffset](index, pname) {
-    return this.getVertexAttribOffset(index, pname);
+  [dartx.getVertexAttribOffset](...args) {
+    return this.getVertexAttribOffset.apply(this, args);
   }
-  [dartx.hint](target, mode) {
-    return this.hint(target, mode);
+  [dartx.hint](...args) {
+    return this.hint.apply(this, args);
   }
-  [dartx.isBuffer](buffer) {
-    return this.isBuffer(buffer);
+  [dartx.isBuffer](...args) {
+    return this.isBuffer.apply(this, args);
   }
-  [dartx.isContextLost]() {
-    return this.isContextLost();
+  [dartx.isContextLost](...args) {
+    return this.isContextLost.apply(this, args);
   }
-  [dartx.isEnabled](cap) {
-    return this.isEnabled(cap);
+  [dartx.isEnabled](...args) {
+    return this.isEnabled.apply(this, args);
   }
-  [dartx.isFramebuffer](framebuffer) {
-    return this.isFramebuffer(framebuffer);
+  [dartx.isFramebuffer](...args) {
+    return this.isFramebuffer.apply(this, args);
   }
-  [dartx.isProgram](program) {
-    return this.isProgram(program);
+  [dartx.isProgram](...args) {
+    return this.isProgram.apply(this, args);
   }
-  [dartx.isRenderbuffer](renderbuffer) {
-    return this.isRenderbuffer(renderbuffer);
+  [dartx.isRenderbuffer](...args) {
+    return this.isRenderbuffer.apply(this, args);
   }
-  [dartx.isShader](shader) {
-    return this.isShader(shader);
+  [dartx.isShader](...args) {
+    return this.isShader.apply(this, args);
   }
-  [dartx.isTexture](texture) {
-    return this.isTexture(texture);
+  [dartx.isTexture](...args) {
+    return this.isTexture.apply(this, args);
   }
-  [dartx.lineWidth](width) {
-    return this.lineWidth(width);
+  [dartx.lineWidth](...args) {
+    return this.lineWidth.apply(this, args);
   }
-  [dartx.linkProgram](program) {
-    return this.linkProgram(program);
+  [dartx.linkProgram](...args) {
+    return this.linkProgram.apply(this, args);
   }
-  [dartx.pixelStorei](pname, param) {
-    return this.pixelStorei(pname, param);
+  [dartx.pixelStorei](...args) {
+    return this.pixelStorei.apply(this, args);
   }
-  [dartx.polygonOffset](factor, units) {
-    return this.polygonOffset(factor, units);
+  [dartx.polygonOffset](...args) {
+    return this.polygonOffset.apply(this, args);
   }
-  [dartx.readPixels](x, y, width, height, format, type, pixels) {
-    return this.readPixels(x, y, width, height, format, type, pixels);
+  [dartx.readPixels](...args) {
+    return this.readPixels.apply(this, args);
   }
-  [dartx.renderbufferStorage](target, internalformat, width, height) {
-    return this.renderbufferStorage(target, internalformat, width, height);
+  [dartx.renderbufferStorage](...args) {
+    return this.renderbufferStorage.apply(this, args);
   }
-  [dartx.sampleCoverage](value, invert) {
-    return this.sampleCoverage(value, invert);
+  [dartx.sampleCoverage](...args) {
+    return this.sampleCoverage.apply(this, args);
   }
-  [dartx.scissor](x, y, width, height) {
-    return this.scissor(x, y, width, height);
+  [dartx.scissor](...args) {
+    return this.scissor.apply(this, args);
   }
-  [dartx.shaderSource](shader, string) {
-    return this.shaderSource(shader, string);
+  [dartx.shaderSource](...args) {
+    return this.shaderSource.apply(this, args);
   }
-  [dartx.stencilFunc](func, ref, mask) {
-    return this.stencilFunc(func, ref, mask);
+  [dartx.stencilFunc](...args) {
+    return this.stencilFunc.apply(this, args);
   }
-  [dartx.stencilFuncSeparate](face, func, ref, mask) {
-    return this.stencilFuncSeparate(face, func, ref, mask);
+  [dartx.stencilFuncSeparate](...args) {
+    return this.stencilFuncSeparate.apply(this, args);
   }
-  [dartx.stencilMask](mask) {
-    return this.stencilMask(mask);
+  [dartx.stencilMask](...args) {
+    return this.stencilMask.apply(this, args);
   }
-  [dartx.stencilMaskSeparate](face, mask) {
-    return this.stencilMaskSeparate(face, mask);
+  [dartx.stencilMaskSeparate](...args) {
+    return this.stencilMaskSeparate.apply(this, args);
   }
-  [dartx.stencilOp](fail, zfail, zpass) {
-    return this.stencilOp(fail, zfail, zpass);
+  [dartx.stencilOp](...args) {
+    return this.stencilOp.apply(this, args);
   }
-  [dartx.stencilOpSeparate](face, fail, zfail, zpass) {
-    return this.stencilOpSeparate(face, fail, zfail, zpass);
+  [dartx.stencilOpSeparate](...args) {
+    return this.stencilOpSeparate.apply(this, args);
   }
   [dartx.texImage2D](target, level, internalformat, format_OR_width, height_OR_type, border_OR_canvas_OR_image_OR_pixels_OR_video, format, type, pixels) {
     if (format === void 0) format = null;
@@ -92640,43 +92640,43 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_texImage2D_1](target, level, internalformat, width, height, border, format, type, pixels) {
-    return this.texImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+  [_texImage2D_1](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [_texImage2D_2](target, level, internalformat, format, type, pixels) {
-    return this.texImage2D(target, level, internalformat, format, type, pixels);
+  [_texImage2D_2](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [_texImage2D_3](target, level, internalformat, format, type, image) {
-    return this.texImage2D(target, level, internalformat, format, type, image);
+  [_texImage2D_3](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [_texImage2D_4](target, level, internalformat, format, type, canvas) {
-    return this.texImage2D(target, level, internalformat, format, type, canvas);
+  [_texImage2D_4](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [_texImage2D_5](target, level, internalformat, format, type, video) {
-    return this.texImage2D(target, level, internalformat, format, type, video);
+  [_texImage2D_5](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [dartx.texImage2DCanvas](target, level, internalformat, format, type, canvas) {
-    return this.texImage2D(target, level, internalformat, format, type, canvas);
+  [dartx.texImage2DCanvas](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [dartx.texImage2DImage](target, level, internalformat, format, type, image) {
-    return this.texImage2D(target, level, internalformat, format, type, image);
+  [dartx.texImage2DImage](...args) {
+    return this.texImage2D.apply(this, args);
   }
   [dartx.texImage2DImageData](target, level, internalformat, format, type, pixels) {
     let pixels_1 = html_common.convertDartToNative_ImageData(pixels);
     this[_texImage2DImageData_1](target, level, internalformat, format, type, pixels_1);
     return;
   }
-  [_texImage2DImageData_1](target, level, internalformat, format, type, pixels) {
-    return this.texImage2D(target, level, internalformat, format, type, pixels);
+  [_texImage2DImageData_1](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [dartx.texImage2DVideo](target, level, internalformat, format, type, video) {
-    return this.texImage2D(target, level, internalformat, format, type, video);
+  [dartx.texImage2DVideo](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [dartx.texParameterf](target, pname, param) {
-    return this.texParameterf(target, pname, param);
+  [dartx.texParameterf](...args) {
+    return this.texParameterf.apply(this, args);
   }
-  [dartx.texParameteri](target, pname, param) {
-    return this.texParameteri(target, pname, param);
+  [dartx.texParameteri](...args) {
+    return this.texParameteri.apply(this, args);
   }
   [dartx.texSubImage2D](target, level, xoffset, yoffset, format_OR_width, height_OR_type, canvas_OR_format_OR_image_OR_pixels_OR_video, type, pixels) {
     if (type === void 0) type = null;
@@ -92704,142 +92704,142 @@
     }
     dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
   }
-  [_texSubImage2D_1](target, level, xoffset, yoffset, width, height, format, type, pixels) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+  [_texSubImage2D_1](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [_texSubImage2D_2](target, level, xoffset, yoffset, format, type, pixels) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, format, type, pixels);
+  [_texSubImage2D_2](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [_texSubImage2D_3](target, level, xoffset, yoffset, format, type, image) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, format, type, image);
+  [_texSubImage2D_3](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [_texSubImage2D_4](target, level, xoffset, yoffset, format, type, canvas) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, format, type, canvas);
+  [_texSubImage2D_4](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [_texSubImage2D_5](target, level, xoffset, yoffset, format, type, video) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, format, type, video);
+  [_texSubImage2D_5](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [dartx.texSubImage2DCanvas](target, level, xoffset, yoffset, format, type, canvas) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, format, type, canvas);
+  [dartx.texSubImage2DCanvas](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [dartx.texSubImage2DImage](target, level, xoffset, yoffset, format, type, image) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, format, type, image);
+  [dartx.texSubImage2DImage](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
   [dartx.texSubImage2DImageData](target, level, xoffset, yoffset, format, type, pixels) {
     let pixels_1 = html_common.convertDartToNative_ImageData(pixels);
     this[_texSubImage2DImageData_1](target, level, xoffset, yoffset, format, type, pixels_1);
     return;
   }
-  [_texSubImage2DImageData_1](target, level, xoffset, yoffset, format, type, pixels) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, format, type, pixels);
+  [_texSubImage2DImageData_1](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [dartx.texSubImage2DVideo](target, level, xoffset, yoffset, format, type, video) {
-    return this.texSubImage2D(target, level, xoffset, yoffset, format, type, video);
+  [dartx.texSubImage2DVideo](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [dartx.uniform1f](location, x) {
-    return this.uniform1f(location, x);
+  [dartx.uniform1f](...args) {
+    return this.uniform1f.apply(this, args);
   }
-  [dartx.uniform1fv](location, v) {
-    return this.uniform1fv(location, v);
+  [dartx.uniform1fv](...args) {
+    return this.uniform1fv.apply(this, args);
   }
-  [dartx.uniform1i](location, x) {
-    return this.uniform1i(location, x);
+  [dartx.uniform1i](...args) {
+    return this.uniform1i.apply(this, args);
   }
-  [dartx.uniform1iv](location, v) {
-    return this.uniform1iv(location, v);
+  [dartx.uniform1iv](...args) {
+    return this.uniform1iv.apply(this, args);
   }
-  [dartx.uniform2f](location, x, y) {
-    return this.uniform2f(location, x, y);
+  [dartx.uniform2f](...args) {
+    return this.uniform2f.apply(this, args);
   }
-  [dartx.uniform2fv](location, v) {
-    return this.uniform2fv(location, v);
+  [dartx.uniform2fv](...args) {
+    return this.uniform2fv.apply(this, args);
   }
-  [dartx.uniform2i](location, x, y) {
-    return this.uniform2i(location, x, y);
+  [dartx.uniform2i](...args) {
+    return this.uniform2i.apply(this, args);
   }
-  [dartx.uniform2iv](location, v) {
-    return this.uniform2iv(location, v);
+  [dartx.uniform2iv](...args) {
+    return this.uniform2iv.apply(this, args);
   }
-  [dartx.uniform3f](location, x, y, z) {
-    return this.uniform3f(location, x, y, z);
+  [dartx.uniform3f](...args) {
+    return this.uniform3f.apply(this, args);
   }
-  [dartx.uniform3fv](location, v) {
-    return this.uniform3fv(location, v);
+  [dartx.uniform3fv](...args) {
+    return this.uniform3fv.apply(this, args);
   }
-  [dartx.uniform3i](location, x, y, z) {
-    return this.uniform3i(location, x, y, z);
+  [dartx.uniform3i](...args) {
+    return this.uniform3i.apply(this, args);
   }
-  [dartx.uniform3iv](location, v) {
-    return this.uniform3iv(location, v);
+  [dartx.uniform3iv](...args) {
+    return this.uniform3iv.apply(this, args);
   }
-  [dartx.uniform4f](location, x, y, z, w) {
-    return this.uniform4f(location, x, y, z, w);
+  [dartx.uniform4f](...args) {
+    return this.uniform4f.apply(this, args);
   }
-  [dartx.uniform4fv](location, v) {
-    return this.uniform4fv(location, v);
+  [dartx.uniform4fv](...args) {
+    return this.uniform4fv.apply(this, args);
   }
-  [dartx.uniform4i](location, x, y, z, w) {
-    return this.uniform4i(location, x, y, z, w);
+  [dartx.uniform4i](...args) {
+    return this.uniform4i.apply(this, args);
   }
-  [dartx.uniform4iv](location, v) {
-    return this.uniform4iv(location, v);
+  [dartx.uniform4iv](...args) {
+    return this.uniform4iv.apply(this, args);
   }
-  [dartx.uniformMatrix2fv](location, transpose, array) {
-    return this.uniformMatrix2fv(location, transpose, array);
+  [dartx.uniformMatrix2fv](...args) {
+    return this.uniformMatrix2fv.apply(this, args);
   }
-  [dartx.uniformMatrix3fv](location, transpose, array) {
-    return this.uniformMatrix3fv(location, transpose, array);
+  [dartx.uniformMatrix3fv](...args) {
+    return this.uniformMatrix3fv.apply(this, args);
   }
-  [dartx.uniformMatrix4fv](location, transpose, array) {
-    return this.uniformMatrix4fv(location, transpose, array);
+  [dartx.uniformMatrix4fv](...args) {
+    return this.uniformMatrix4fv.apply(this, args);
   }
-  [dartx.useProgram](program) {
-    return this.useProgram(program);
+  [dartx.useProgram](...args) {
+    return this.useProgram.apply(this, args);
   }
-  [dartx.validateProgram](program) {
-    return this.validateProgram(program);
+  [dartx.validateProgram](...args) {
+    return this.validateProgram.apply(this, args);
   }
-  [dartx.vertexAttrib1f](indx, x) {
-    return this.vertexAttrib1f(indx, x);
+  [dartx.vertexAttrib1f](...args) {
+    return this.vertexAttrib1f.apply(this, args);
   }
-  [dartx.vertexAttrib1fv](indx, values) {
-    return this.vertexAttrib1fv(indx, values);
+  [dartx.vertexAttrib1fv](...args) {
+    return this.vertexAttrib1fv.apply(this, args);
   }
-  [dartx.vertexAttrib2f](indx, x, y) {
-    return this.vertexAttrib2f(indx, x, y);
+  [dartx.vertexAttrib2f](...args) {
+    return this.vertexAttrib2f.apply(this, args);
   }
-  [dartx.vertexAttrib2fv](indx, values) {
-    return this.vertexAttrib2fv(indx, values);
+  [dartx.vertexAttrib2fv](...args) {
+    return this.vertexAttrib2fv.apply(this, args);
   }
-  [dartx.vertexAttrib3f](indx, x, y, z) {
-    return this.vertexAttrib3f(indx, x, y, z);
+  [dartx.vertexAttrib3f](...args) {
+    return this.vertexAttrib3f.apply(this, args);
   }
-  [dartx.vertexAttrib3fv](indx, values) {
-    return this.vertexAttrib3fv(indx, values);
+  [dartx.vertexAttrib3fv](...args) {
+    return this.vertexAttrib3fv.apply(this, args);
   }
-  [dartx.vertexAttrib4f](indx, x, y, z, w) {
-    return this.vertexAttrib4f(indx, x, y, z, w);
+  [dartx.vertexAttrib4f](...args) {
+    return this.vertexAttrib4f.apply(this, args);
   }
-  [dartx.vertexAttrib4fv](indx, values) {
-    return this.vertexAttrib4fv(indx, values);
+  [dartx.vertexAttrib4fv](...args) {
+    return this.vertexAttrib4fv.apply(this, args);
   }
-  [dartx.vertexAttribPointer](indx, size, type, normalized, stride, offset) {
-    return this.vertexAttribPointer(indx, size, type, normalized, stride, offset);
+  [dartx.vertexAttribPointer](...args) {
+    return this.vertexAttribPointer.apply(this, args);
   }
-  [dartx.viewport](x, y, width, height) {
-    return this.viewport(x, y, width, height);
+  [dartx.viewport](...args) {
+    return this.viewport.apply(this, args);
   }
-  [dartx.texImage2DUntyped](targetTexture, levelOfDetail, internalFormat, format, type, data) {
-    return this.texImage2D(targetTexture, levelOfDetail, internalFormat, format, type, data);
+  [dartx.texImage2DUntyped](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [dartx.texImage2DTyped](targetTexture, levelOfDetail, internalFormat, width, height, border, format, type, data) {
-    return this.texImage2D(targetTexture, levelOfDetail, internalFormat, width, height, border, format, type, data);
+  [dartx.texImage2DTyped](...args) {
+    return this.texImage2D.apply(this, args);
   }
-  [dartx.texSubImage2DUntyped](targetTexture, levelOfDetail, xOffset, yOffset, format, type, data) {
-    return this.texSubImage2D(targetTexture, levelOfDetail, xOffset, yOffset, format, type, data);
+  [dartx.texSubImage2DUntyped](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
-  [dartx.texSubImage2DTyped](targetTexture, levelOfDetail, xOffset, yOffset, width, height, border, format, type, data) {
-    return this.texSubImage2D(targetTexture, levelOfDetail, xOffset, yOffset, width, height, border, format, type, data);
+  [dartx.texSubImage2DTyped](...args) {
+    return this.texSubImage2D.apply(this, args);
   }
 };
 web_gl.RenderingContext[dart.implements] = () => [html.CanvasRenderingContext];
@@ -93960,14 +93960,14 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.drawArraysInstancedAngle](mode, first, count, primcount) {
-    return this.drawArraysInstancedANGLE(mode, first, count, primcount);
+  [dartx.drawArraysInstancedAngle](...args) {
+    return this.drawArraysInstancedANGLE.apply(this, args);
   }
-  [dartx.drawElementsInstancedAngle](mode, count, type, offset, primcount) {
-    return this.drawElementsInstancedANGLE(mode, count, type, offset, primcount);
+  [dartx.drawElementsInstancedAngle](...args) {
+    return this.drawElementsInstancedANGLE.apply(this, args);
   }
-  [dartx.vertexAttribDivisorAngle](index, divisor) {
-    return this.vertexAttribDivisorANGLE(index, divisor);
+  [dartx.vertexAttribDivisorAngle](...args) {
+    return this.vertexAttribDivisorANGLE.apply(this, args);
   }
 };
 dart.setSignature(web_gl.AngleInstancedArrays, {
@@ -94163,8 +94163,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.getTranslatedShaderSource](shader) {
-    return this.getTranslatedShaderSource(shader);
+  [dartx.getTranslatedShaderSource](...args) {
+    return this.getTranslatedShaderSource.apply(this, args);
   }
 };
 dart.setSignature(web_gl.DebugShaders, {
@@ -94190,8 +94190,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.drawBuffersWebgl](buffers) {
-    return this.drawBuffersWEBGL(buffers);
+  [dartx.drawBuffersWebgl](...args) {
+    return this.drawBuffersWEBGL.apply(this, args);
   }
 };
 dart.setSignature(web_gl.DrawBuffers, {
@@ -94334,11 +94334,11 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.loseContext]() {
-    return this.loseContext();
+  [dartx.loseContext](...args) {
+    return this.loseContext.apply(this, args);
   }
-  [dartx.restoreContext]() {
-    return this.restoreContext();
+  [dartx.restoreContext](...args) {
+    return this.restoreContext.apply(this, args);
   }
 };
 dart.setSignature(web_gl.LoseContext, {
@@ -94407,17 +94407,17 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.bindVertexArray](arrayObject) {
-    return this.bindVertexArrayOES(arrayObject);
+  [dartx.bindVertexArray](...args) {
+    return this.bindVertexArrayOES.apply(this, args);
   }
-  [dartx.createVertexArray]() {
-    return this.createVertexArrayOES();
+  [dartx.createVertexArray](...args) {
+    return this.createVertexArrayOES.apply(this, args);
   }
-  [dartx.deleteVertexArray](arrayObject) {
-    return this.deleteVertexArrayOES(arrayObject);
+  [dartx.deleteVertexArray](...args) {
+    return this.deleteVertexArrayOES.apply(this, args);
   }
-  [dartx.isVertexArray](arrayObject) {
-    return this.isVertexArrayOES(arrayObject);
+  [dartx.isVertexArray](...args) {
+    return this.isVertexArrayOES.apply(this, args);
   }
 };
 dart.setSignature(web_gl.OesVertexArrayObject, {
@@ -94542,14 +94542,14 @@
   get [dartx.version]() {
     return this.version;
   }
-  [dartx.changeVersion](oldVersion, newVersion, callback, errorCallback, successCallback) {
-    return this.changeVersion(oldVersion, newVersion, callback, errorCallback, successCallback);
+  [dartx.changeVersion](...args) {
+    return this.changeVersion.apply(this, args);
   }
-  [dartx.readTransaction](callback, errorCallback, successCallback) {
-    return this.readTransaction(callback, errorCallback, successCallback);
+  [dartx.readTransaction](...args) {
+    return this.readTransaction.apply(this, args);
   }
-  [dartx.transaction](callback, errorCallback, successCallback) {
-    return this.transaction(callback, errorCallback, successCallback);
+  [dartx.transaction](...args) {
+    return this.transaction.apply(this, args);
   }
 };
 dart.setSignature(web_sql.SqlDatabase, {
@@ -94689,8 +94689,8 @@
   [dartx.item](index) {
     return html_common.convertNativeToDart_Dictionary(this[_item_1](index));
   }
-  [_item_1](index) {
-    return this.item(index);
+  [_item_1](...args) {
+    return this.item.apply(this, args);
   }
 };
 web_sql.SqlResultSetRowList[dart.implements] = () => [ListOfMap()];
@@ -94719,8 +94719,8 @@
   static _() {
     dart.throw(new core.UnsupportedError("Not supported"));
   }
-  [dartx.executeSql](sqlStatement, arguments$, callback, errorCallback) {
-    return this.executeSql(sqlStatement, arguments$, callback, errorCallback);
+  [dartx.executeSql](...args) {
+    return this.executeSql.apply(this, args);
   }
 };
 dart.setSignature(web_sql.SqlTransaction, {
diff --git a/pkg/dev_compiler/lib/js/legacy/dart_sdk.js b/pkg/dev_compiler/lib/js/legacy/dart_sdk.js
index d92f36b..ab2cabd 100644
--- a/pkg/dev_compiler/lib/js/legacy/dart_sdk.js
+++ b/pkg/dev_compiler/lib/js/legacy/dart_sdk.js
@@ -15610,113 +15610,113 @@
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getFloat32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getFloat32](byteOffset, littleEndian) {
-      return this.getFloat32(byteOffset, littleEndian);
+    [_getFloat32](...args) {
+      return this.getFloat32.apply(this, args);
     }
     [dartx.getFloat64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getFloat64](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getFloat64](byteOffset, littleEndian) {
-      return this.getFloat64(byteOffset, littleEndian);
+    [_getFloat64](...args) {
+      return this.getFloat64.apply(this, args);
     }
     [dartx.getInt16](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getInt16](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getInt16](byteOffset, littleEndian) {
-      return this.getInt16(byteOffset, littleEndian);
+    [_getInt16](...args) {
+      return this.getInt16.apply(this, args);
     }
     [dartx.getInt32](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getInt32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getInt32](byteOffset, littleEndian) {
-      return this.getInt32(byteOffset, littleEndian);
+    [_getInt32](...args) {
+      return this.getInt32.apply(this, args);
     }
     [dartx.getInt64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Int64 accessor not supported by dart2js.'));
     }
-    [dartx.getInt8](byteOffset) {
-      return this.getInt8(byteOffset);
+    [dartx.getInt8](...args) {
+      return this.getInt8.apply(this, args);
     }
     [dartx.getUint16](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getUint16](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getUint16](byteOffset, littleEndian) {
-      return this.getUint16(byteOffset, littleEndian);
+    [_getUint16](...args) {
+      return this.getUint16.apply(this, args);
     }
     [dartx.getUint32](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_getUint32](byteOffset, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_getUint32](byteOffset, littleEndian) {
-      return this.getUint32(byteOffset, littleEndian);
+    [_getUint32](...args) {
+      return this.getUint32.apply(this, args);
     }
     [dartx.getUint64](byteOffset, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Uint64 accessor not supported by dart2js.'));
     }
-    [dartx.getUint8](byteOffset) {
-      return this.getUint8(byteOffset);
+    [dartx.getUint8](...args) {
+      return this.getUint8.apply(this, args);
     }
     [dartx.setFloat32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setFloat32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setFloat32](byteOffset, value, littleEndian) {
-      return this.setFloat32(byteOffset, value, littleEndian);
+    [_setFloat32](...args) {
+      return this.setFloat32.apply(this, args);
     }
     [dartx.setFloat64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setFloat64](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setFloat64](byteOffset, value, littleEndian) {
-      return this.setFloat64(byteOffset, value, littleEndian);
+    [_setFloat64](...args) {
+      return this.setFloat64.apply(this, args);
     }
     [dartx.setInt16](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setInt16](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setInt16](byteOffset, value, littleEndian) {
-      return this.setInt16(byteOffset, value, littleEndian);
+    [_setInt16](...args) {
+      return this.setInt16.apply(this, args);
     }
     [dartx.setInt32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setInt32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setInt32](byteOffset, value, littleEndian) {
-      return this.setInt32(byteOffset, value, littleEndian);
+    [_setInt32](...args) {
+      return this.setInt32.apply(this, args);
     }
     [dartx.setInt64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Int64 accessor not supported by dart2js.'));
     }
-    [dartx.setInt8](byteOffset, value) {
-      return this.setInt8(byteOffset, value);
+    [dartx.setInt8](...args) {
+      return this.setInt8.apply(this, args);
     }
     [dartx.setUint16](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setUint16](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setUint16](byteOffset, value, littleEndian) {
-      return this.setUint16(byteOffset, value, littleEndian);
+    [_setUint16](...args) {
+      return this.setUint16.apply(this, args);
     }
     [dartx.setUint32](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       return this[_setUint32](byteOffset, value, dart.equals(typed_data.Endianness.LITTLE_ENDIAN, endian));
     }
-    [_setUint32](byteOffset, value, littleEndian) {
-      return this.setUint32(byteOffset, value, littleEndian);
+    [_setUint32](...args) {
+      return this.setUint32.apply(this, args);
     }
     [dartx.setUint64](byteOffset, value, endian) {
       if (endian === void 0) endian = typed_data.Endianness.BIG_ENDIAN;
       dart.throw(new core.UnsupportedError('Uint64 accessor not supported by dart2js.'));
     }
-    [dartx.setUint8](byteOffset, value) {
-      return this.setUint8(byteOffset, value);
+    [dartx.setUint8](...args) {
+      return this.setUint8.apply(this, args);
     }
     static _create1(arg) {
       return new DataView(new ArrayBuffer(arg));
@@ -38350,21 +38350,21 @@
     get [dartx.source]() {
       return this.source;
     }
-    [dartx.advance](count) {
-      return this.advance(count);
+    [dartx.advance](...args) {
+      return this.advance.apply(this, args);
     }
-    [dartx.continuePrimaryKey](key, primaryKey) {
-      return this.continuePrimaryKey(key, primaryKey);
+    [dartx.continuePrimaryKey](...args) {
+      return this.continuePrimaryKey.apply(this, args);
     }
-    [_delete]() {
-      return this.delete();
+    [_delete](...args) {
+      return this.delete.apply(this, args);
     }
     [_update](value) {
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_update_1](value_1);
     }
-    [_update_1](value) {
-      return this.update(value);
+    [_update_1](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.Cursor, {
@@ -38442,14 +38442,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_addEventListener](type, listener, capture) {
-      return this.addEventListener(type, listener, capture);
+    [_addEventListener](...args) {
+      return this.addEventListener.apply(this, args);
     }
-    [dartx.dispatchEvent](event) {
-      return this.dispatchEvent(event);
+    [dartx.dispatchEvent](...args) {
+      return this.dispatchEvent.apply(this, args);
     }
-    [_removeEventListener](type, listener, capture) {
-      return this.removeEventListener(type, listener, capture);
+    [_removeEventListener](...args) {
+      return this.removeEventListener.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.EventTarget, '_created');
@@ -38522,8 +38522,8 @@
       }
       return this[_transaction](storeNames, mode);
     }
-    [_transaction](stores, mode) {
-      return this.transaction(stores, mode);
+    [_transaction](...args) {
+      return this.transaction.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -38537,8 +38537,8 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [_createObjectStore](name, options) {
       if (options === void 0) options = null;
@@ -38548,14 +38548,14 @@
       }
       return this[_createObjectStore_2](name);
     }
-    [_createObjectStore_1](name, options) {
-      return this.createObjectStore(name, options);
+    [_createObjectStore_1](...args) {
+      return this.createObjectStore.apply(this, args);
     }
-    [_createObjectStore_2](name) {
-      return this.createObjectStore(name);
+    [_createObjectStore_2](...args) {
+      return this.createObjectStore.apply(this, args);
     }
-    [dartx.deleteObjectStore](name) {
-      return this.deleteObjectStore(name);
+    [dartx.deleteObjectStore](...args) {
+      return this.deleteObjectStore.apply(this, args);
     }
     get [dartx.onAbort]() {
       return indexed_db.Database.abortEvent.forTarget(this);
@@ -38694,17 +38694,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cmp](first, second) {
-      return this.cmp(first, second);
+    [dartx.cmp](...args) {
+      return this.cmp.apply(this, args);
     }
-    [_deleteDatabase](name) {
-      return this.deleteDatabase(name);
+    [_deleteDatabase](...args) {
+      return this.deleteDatabase.apply(this, args);
     }
-    [_open](name, version) {
-      return this.open(name, version);
+    [_open](...args) {
+      return this.open.apply(this, args);
     }
-    [_webkitGetDatabaseNames]() {
-      return this.webkitGetDatabaseNames();
+    [_webkitGetDatabaseNames](...args) {
+      return this.webkitGetDatabaseNames.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.IdbFactory, {
@@ -38847,26 +38847,26 @@
     get [dartx.unique]() {
       return this.unique;
     }
-    [_count$0](key) {
-      return this.count(key);
+    [_count$0](...args) {
+      return this.count.apply(this, args);
     }
-    [_get$](key) {
-      return this.get(key);
+    [_get$](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](range, maxCount) {
-      return this.getAll(range, maxCount);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.getAllKeys](range, maxCount) {
-      return this.getAllKeys(range, maxCount);
+    [dartx.getAllKeys](...args) {
+      return this.getAllKeys.apply(this, args);
     }
-    [_getKey$](key) {
-      return this.getKey(key);
+    [_getKey$](...args) {
+      return this.getKey.apply(this, args);
     }
-    [_openCursor](range, direction) {
-      return this.openCursor(range, direction);
+    [_openCursor](...args) {
+      return this.openCursor.apply(this, args);
     }
-    [_openKeyCursor](range, direction) {
-      return this.openKeyCursor(range, direction);
+    [_openKeyCursor](...args) {
+      return this.openKeyCursor.apply(this, args);
     }
   };
   dart.setSignature(indexed_db.Index, {
@@ -39120,17 +39120,17 @@
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_add_2](value_1);
     }
-    [_add_1](value, key) {
-      return this.add(value, key);
+    [_add_1](...args) {
+      return this.add.apply(this, args);
     }
-    [_add_2](value) {
-      return this.add(value);
+    [_add_2](...args) {
+      return this.add.apply(this, args);
     }
-    [_clear$0]() {
-      return this.clear();
+    [_clear$0](...args) {
+      return this.clear.apply(this, args);
     }
-    [_count$0](key) {
-      return this.count(key);
+    [_count$0](...args) {
+      return this.count.apply(this, args);
     }
     [_createIndex](name, keyPath, options) {
       if (options === void 0) options = null;
@@ -39140,35 +39140,35 @@
       }
       return this[_createIndex_2](name, keyPath);
     }
-    [_createIndex_1](name, keyPath, options) {
-      return this.createIndex(name, keyPath, options);
+    [_createIndex_1](...args) {
+      return this.createIndex.apply(this, args);
     }
-    [_createIndex_2](name, keyPath) {
-      return this.createIndex(name, keyPath);
+    [_createIndex_2](...args) {
+      return this.createIndex.apply(this, args);
     }
-    [_delete](key) {
-      return this.delete(key);
+    [_delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.deleteIndex](name) {
-      return this.deleteIndex(name);
+    [dartx.deleteIndex](...args) {
+      return this.deleteIndex.apply(this, args);
     }
-    [_get$](key) {
-      return this.get(key);
+    [_get$](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](range, maxCount) {
-      return this.getAll(range, maxCount);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.getAllKeys](range, maxCount) {
-      return this.getAllKeys(range, maxCount);
+    [dartx.getAllKeys](...args) {
+      return this.getAllKeys.apply(this, args);
     }
-    [dartx.index](name) {
-      return this.index(name);
+    [dartx.index](...args) {
+      return this.index.apply(this, args);
     }
-    [_openCursor](range, direction) {
-      return this.openCursor(range, direction);
+    [_openCursor](...args) {
+      return this.openCursor.apply(this, args);
     }
-    [dartx.openKeyCursor](range, direction) {
-      return this.openKeyCursor(range, direction);
+    [dartx.openKeyCursor](...args) {
+      return this.openKeyCursor.apply(this, args);
     }
     [_put](value, key) {
       if (key === void 0) key = null;
@@ -39180,11 +39180,11 @@
       let value_1 = html_common.convertDartToNative_SerializedScriptValue(value);
       return this[_put_2](value_1);
     }
-    [_put_1](value, key) {
-      return this.put(value, key);
+    [_put_1](...args) {
+      return this.put.apply(this, args);
     }
-    [_put_2](value) {
-      return this.put(value);
+    [_put_2](...args) {
+      return this.put.apply(this, args);
     }
     static _cursorStreamFromResult(T) {
       return (request, autoAdvance) => {
@@ -39399,11 +39399,11 @@
     get [dartx.objectStoreNames]() {
       return this.objectStoreNames;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.objectStore](name) {
-      return this.objectStore(name);
+    [dartx.objectStore](...args) {
+      return this.objectStore.apply(this, args);
     }
     get [dartx.onAbort]() {
       return indexed_db.Transaction.abortEvent.forTarget(this);
@@ -39550,17 +39550,17 @@
     get [dartx.type]() {
       return this.type;
     }
-    [_initEvent](type, bubbles, cancelable) {
-      return this.initEvent(type, bubbles, cancelable);
+    [_initEvent](...args) {
+      return this.initEvent.apply(this, args);
     }
-    [dartx.preventDefault]() {
-      return this.preventDefault();
+    [dartx.preventDefault](...args) {
+      return this.preventDefault.apply(this, args);
     }
-    [dartx.stopImmediatePropagation]() {
-      return this.stopImmediatePropagation();
+    [dartx.stopImmediatePropagation](...args) {
+      return this.stopImmediatePropagation.apply(this, args);
     }
-    [dartx.stopPropagation]() {
-      return this.stopPropagation();
+    [dartx.stopPropagation](...args) {
+      return this.stopPropagation.apply(this, args);
     }
   };
   dart.setSignature(html$.Event, {
@@ -39861,26 +39861,26 @@
     set [dartx.text](value) {
       this.textContent = value;
     }
-    [dartx.append](node) {
-      return this.appendChild(node);
+    [dartx.append](...args) {
+      return this.appendChild.apply(this, args);
     }
-    [dartx.clone](deep) {
-      return this.cloneNode(deep);
+    [dartx.clone](...args) {
+      return this.cloneNode.apply(this, args);
     }
-    [dartx.contains](other) {
-      return this.contains(other);
+    [dartx.contains](...args) {
+      return this.contains.apply(this, args);
     }
-    [dartx.hasChildNodes]() {
-      return this.hasChildNodes();
+    [dartx.hasChildNodes](...args) {
+      return this.hasChildNodes.apply(this, args);
     }
-    [dartx.insertBefore](node, child) {
-      return this.insertBefore(node, child);
+    [dartx.insertBefore](...args) {
+      return this.insertBefore.apply(this, args);
     }
-    [_removeChild](child) {
-      return this.removeChild(child);
+    [_removeChild](...args) {
+      return this.removeChild.apply(this, args);
     }
-    [_replaceChild](node, child) {
-      return this.replaceChild(node, child);
+    [_replaceChild](...args) {
+      return this.replaceChild.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.Node, '_created');
@@ -40360,8 +40360,8 @@
       let convertedTiming = core.Map.is(timing) ? html_common.convertDartToNative_Dictionary(timing) : timing;
       return convertedTiming == null ? this[_animate](convertedFrames) : this[_animate](convertedFrames, convertedTiming);
     }
-    [_animate](effect, timing) {
-      return this.animate(effect, timing);
+    [_animate](...args) {
+      return this.animate.apply(this, args);
     }
     [dartx.attributeChanged](name, oldValue, newValue) {}
     get [_xtag]() {
@@ -40421,8 +40421,8 @@
         this[_insertAdjacentNode](where, html$.Text.new(text));
       }
     }
-    [_insertAdjacentText](where, text) {
-      return this.insertAdjacentText(where, text);
+    [_insertAdjacentText](...args) {
+      return this.insertAdjacentText.apply(this, args);
     }
     [dartx.insertAdjacentHtml](where, html, opts) {
       let validator = opts && 'validator' in opts ? opts.validator : null;
@@ -40433,8 +40433,8 @@
         this[_insertAdjacentNode](where, this[dartx.createFragment](html, {validator: validator, treeSanitizer: treeSanitizer}));
       }
     }
-    [_insertAdjacentHtml](where, text) {
-      return this.insertAdjacentHTML(where, text);
+    [_insertAdjacentHtml](...args) {
+      return this.insertAdjacentHTML.apply(this, args);
     }
     [dartx.insertAdjacentElement](where, element) {
       if (!!this.insertAdjacentElement) {
@@ -40444,8 +40444,8 @@
       }
       return element;
     }
-    [_insertAdjacentElement](where, element) {
-      return this.insertAdjacentElement(where, element);
+    [_insertAdjacentElement](...args) {
+      return this.insertAdjacentElement.apply(this, args);
     }
     [_insertAdjacentNode](where, node) {
       switch (where[dartx.toLowerCase]()) {
@@ -40759,14 +40759,14 @@
     set [dartx.dropzone](value) {
       this.webkitdropzone = value;
     }
-    [dartx.blur]() {
-      return this.blur();
+    [dartx.blur](...args) {
+      return this.blur.apply(this, args);
     }
-    [dartx.click]() {
-      return this.click();
+    [dartx.click](...args) {
+      return this.click.apply(this, args);
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
     get [_attributes$]() {
       return this.attributes;
@@ -40831,50 +40831,50 @@
     get [dartx.tagName]() {
       return this.tagName;
     }
-    [dartx.closest](selectors) {
-      return this.closest(selectors);
+    [dartx.closest](...args) {
+      return this.closest.apply(this, args);
     }
-    [dartx.getAnimations]() {
-      return this.getAnimations();
+    [dartx.getAnimations](...args) {
+      return this.getAnimations.apply(this, args);
     }
-    [dartx.getAttribute](name) {
-      return this.getAttribute(name);
+    [dartx.getAttribute](...args) {
+      return this.getAttribute.apply(this, args);
     }
-    [dartx.getAttributeNS](namespaceURI, localName) {
-      return this.getAttributeNS(namespaceURI, localName);
+    [dartx.getAttributeNS](...args) {
+      return this.getAttributeNS.apply(this, args);
     }
-    [dartx.getBoundingClientRect]() {
-      return this.getBoundingClientRect();
+    [dartx.getBoundingClientRect](...args) {
+      return this.getBoundingClientRect.apply(this, args);
     }
-    [dartx.getClientRects]() {
-      return this.getClientRects();
+    [dartx.getClientRects](...args) {
+      return this.getClientRects.apply(this, args);
     }
-    [dartx.getDestinationInsertionPoints]() {
-      return this.getDestinationInsertionPoints();
+    [dartx.getDestinationInsertionPoints](...args) {
+      return this.getDestinationInsertionPoints.apply(this, args);
     }
-    [dartx.getElementsByClassName](classNames) {
-      return this.getElementsByClassName(classNames);
+    [dartx.getElementsByClassName](...args) {
+      return this.getElementsByClassName.apply(this, args);
     }
-    [_getElementsByTagName](localName) {
-      return this.getElementsByTagName(localName);
+    [_getElementsByTagName](...args) {
+      return this.getElementsByTagName.apply(this, args);
     }
-    [_hasAttribute](name) {
-      return this.hasAttribute(name);
+    [_hasAttribute](...args) {
+      return this.hasAttribute.apply(this, args);
     }
-    [_hasAttributeNS](namespaceURI, localName) {
-      return this.hasAttributeNS(namespaceURI, localName);
+    [_hasAttributeNS](...args) {
+      return this.hasAttributeNS.apply(this, args);
     }
-    [_removeAttribute](name) {
-      return this.removeAttribute(name);
+    [_removeAttribute](...args) {
+      return this.removeAttribute.apply(this, args);
     }
-    [_removeAttributeNS](namespaceURI, localName) {
-      return this.removeAttributeNS(namespaceURI, localName);
+    [_removeAttributeNS](...args) {
+      return this.removeAttributeNS.apply(this, args);
     }
-    [dartx.requestFullscreen]() {
-      return this.requestFullscreen();
+    [dartx.requestFullscreen](...args) {
+      return this.requestFullscreen.apply(this, args);
     }
-    [dartx.requestPointerLock]() {
-      return this.requestPointerLock();
+    [dartx.requestPointerLock](...args) {
+      return this.requestPointerLock.apply(this, args);
     }
     [dartx.scroll](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40894,14 +40894,14 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scroll_1]() {
-      return this.scroll();
+    [_scroll_1](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_2](options) {
-      return this.scroll(options);
+    [_scroll_2](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_3](x, y) {
-      return this.scroll(x, y);
+    [_scroll_3](...args) {
+      return this.scroll.apply(this, args);
     }
     [dartx.scrollBy](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40921,20 +40921,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollBy_1]() {
-      return this.scrollBy();
+    [_scrollBy_1](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_2](options) {
-      return this.scrollBy(options);
+    [_scrollBy_2](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_3](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_3](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollIntoView](alignWithTop) {
-      return this.scrollIntoView(alignWithTop);
+    [_scrollIntoView](...args) {
+      return this.scrollIntoView.apply(this, args);
     }
-    [_scrollIntoViewIfNeeded](centerIfNeeded) {
-      return this.scrollIntoViewIfNeeded(centerIfNeeded);
+    [_scrollIntoViewIfNeeded](...args) {
+      return this.scrollIntoViewIfNeeded.apply(this, args);
     }
     [dartx.scrollTo](options_OR_x, y) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -40954,26 +40954,26 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollTo_1]() {
-      return this.scrollTo();
+    [_scrollTo_1](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_2](options) {
-      return this.scrollTo(options);
+    [_scrollTo_2](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_3](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_3](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [dartx.setAttribute](name, value) {
-      return this.setAttribute(name, value);
+    [dartx.setAttribute](...args) {
+      return this.setAttribute.apply(this, args);
     }
-    [dartx.setAttributeNS](namespaceURI, name, value) {
-      return this.setAttributeNS(namespaceURI, name, value);
+    [dartx.setAttributeNS](...args) {
+      return this.setAttributeNS.apply(this, args);
     }
-    [dartx.after](nodes) {
-      return this.after(nodes);
+    [dartx.after](...args) {
+      return this.after.apply(this, args);
     }
-    [dartx.before](nodes) {
-      return this.before(nodes);
+    [dartx.before](...args) {
+      return this.before.apply(this, args);
     }
     get [dartx.nextElementSibling]() {
       return this.nextElementSibling;
@@ -40993,11 +40993,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.Element.abortEvent.forElement(this);
@@ -42053,20 +42053,20 @@
     set [dartx.startTime](value) {
       this.startTime = value;
     }
-    [dartx.cancel]() {
-      return this.cancel();
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.finish]() {
-      return this.finish();
+    [dartx.finish](...args) {
+      return this.finish.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.reverse]() {
-      return this.reverse();
+    [dartx.reverse](...args) {
+      return this.reverse.apply(this, args);
     }
   };
   dart.setSignature(html$.Animation, {
@@ -42317,11 +42317,11 @@
     set [dartx.playbackRate](value) {
       this.playbackRate = value;
     }
-    [dartx.getAnimations]() {
-      return this.getAnimations();
+    [dartx.getAnimations](...args) {
+      return this.getAnimations.apply(this, args);
     }
-    [dartx.play](source) {
-      return this.play(source);
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
   };
   dart.setSignature(html$.AnimationTimeline, {
@@ -42383,14 +42383,14 @@
     get [dartx.status]() {
       return this.status;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.swapCache]() {
-      return this.swapCache();
+    [dartx.swapCache](...args) {
+      return this.swapCache.apply(this, args);
     }
-    [dartx.update]() {
-      return this.update();
+    [dartx.update](...args) {
+      return this.update.apply(this, args);
     }
     get [dartx.onCached]() {
       return html$.ApplicationCache.cachedEvent.forTarget(this);
@@ -42937,35 +42937,35 @@
     get [dartx.videoDecodedByteCount]() {
       return this.webkitVideoDecodedByteCount;
     }
-    [dartx.addTextTrack](kind, label, language) {
-      return this.addTextTrack(kind, label, language);
+    [dartx.addTextTrack](...args) {
+      return this.addTextTrack.apply(this, args);
     }
-    [dartx.canPlayType](type, keySystem) {
-      return this.canPlayType(type, keySystem);
+    [dartx.canPlayType](...args) {
+      return this.canPlayType.apply(this, args);
     }
-    [dartx.load]() {
-      return this.load();
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.setMediaKeys](mediaKeys) {
-      return this.setMediaKeys(mediaKeys);
+    [dartx.setMediaKeys](...args) {
+      return this.setMediaKeys.apply(this, args);
     }
-    [dartx.setSinkId](sinkId) {
-      return this.setSinkId(sinkId);
+    [dartx.setSinkId](...args) {
+      return this.setSinkId.apply(this, args);
     }
-    [dartx.addKey](keySystem, key, initData, sessionId) {
-      return this.webkitAddKey(keySystem, key, initData, sessionId);
+    [dartx.addKey](...args) {
+      return this.webkitAddKey.apply(this, args);
     }
-    [dartx.cancelKeyRequest](keySystem, sessionId) {
-      return this.webkitCancelKeyRequest(keySystem, sessionId);
+    [dartx.cancelKeyRequest](...args) {
+      return this.webkitCancelKeyRequest.apply(this, args);
     }
-    [dartx.generateKeyRequest](keySystem, initData) {
-      return this.webkitGenerateKeyRequest(keySystem, initData);
+    [dartx.generateKeyRequest](...args) {
+      return this.webkitGenerateKeyRequest.apply(this, args);
     }
     get [dartx.onKeyAdded]() {
       return html$.MediaElement.keyAddedEvent.forElement(this);
@@ -43169,11 +43169,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.AudioTrackList.changeEvent.forTarget(this);
@@ -43373,8 +43373,8 @@
     get [dartx.userChoice]() {
       return this.userChoice;
     }
-    [dartx.prompt]() {
-      return this.prompt();
+    [dartx.prompt](...args) {
+      return this.prompt.apply(this, args);
     }
   };
   dart.setSignature(html$.BeforeInstallPromptEvent, {
@@ -43429,11 +43429,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.slice](start, end, contentType) {
-      return this.slice(start, end, contentType);
+    [dartx.slice](...args) {
+      return this.slice.apply(this, args);
     }
     static new(blobParts, type, endings) {
       if (type === void 0) type = null;
@@ -43493,8 +43493,8 @@
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_requestDevice_1](options_1);
     }
-    [_requestDevice_1](options) {
-      return this.requestDevice(options);
+    [_requestDevice_1](...args) {
+      return this.requestDevice.apply(this, args);
     }
   };
   dart.setSignature(html$.Bluetooth, {
@@ -43544,8 +43544,8 @@
     get [dartx.vendorIDSource]() {
       return this.vendorIDSource;
     }
-    [dartx.connectGatt]() {
-      return this.connectGATT();
+    [dartx.connectGatt](...args) {
+      return this.connectGATT.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothDevice, {
@@ -43575,11 +43575,11 @@
     get [dartx.uuid]() {
       return this.uuid;
     }
-    [dartx.readValue]() {
-      return this.readValue();
+    [dartx.readValue](...args) {
+      return this.readValue.apply(this, args);
     }
-    [dartx.writeValue](value) {
-      return this.writeValue(value);
+    [dartx.writeValue](...args) {
+      return this.writeValue.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattCharacteristic, {
@@ -43602,8 +43602,8 @@
     get [dartx.connected]() {
       return this.connected;
     }
-    [dartx.getPrimaryService](service) {
-      return this.getPrimaryService(service);
+    [dartx.getPrimaryService](...args) {
+      return this.getPrimaryService.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattRemoteServer, {
@@ -43627,8 +43627,8 @@
     get [dartx.uuid]() {
       return this.uuid;
     }
-    [dartx.getCharacteristic](characteristic) {
-      return this.getCharacteristic(characteristic);
+    [dartx.getCharacteristic](...args) {
+      return this.getCharacteristic.apply(this, args);
     }
   };
   dart.setSignature(html$.BluetoothGattService, {
@@ -43670,17 +43670,17 @@
     get [dartx.bodyUsed]() {
       return this.bodyUsed;
     }
-    [dartx.arrayBuffer]() {
-      return this.arrayBuffer();
+    [dartx.arrayBuffer](...args) {
+      return this.arrayBuffer.apply(this, args);
     }
-    [dartx.blob]() {
-      return this.blob();
+    [dartx.blob](...args) {
+      return this.blob.apply(this, args);
     }
-    [dartx.json]() {
-      return this.json();
+    [dartx.json](...args) {
+      return this.json.apply(this, args);
     }
-    [dartx.text]() {
-      return this.text();
+    [dartx.text](...args) {
+      return this.text.apply(this, args);
     }
   };
   dart.setSignature(html$.Body, {
@@ -43954,14 +43954,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ButtonElement, 'created');
@@ -44022,26 +44022,26 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.appendData](data) {
-      return this.appendData(data);
+    [dartx.appendData](...args) {
+      return this.appendData.apply(this, args);
     }
-    [dartx.deleteData](offset, count) {
-      return this.deleteData(offset, count);
+    [dartx.deleteData](...args) {
+      return this.deleteData.apply(this, args);
     }
-    [dartx.insertData](offset, data) {
-      return this.insertData(offset, data);
+    [dartx.insertData](...args) {
+      return this.insertData.apply(this, args);
     }
-    [dartx.replaceData](offset, count, data) {
-      return this.replaceData(offset, count, data);
+    [dartx.replaceData](...args) {
+      return this.replaceData.apply(this, args);
     }
-    [dartx.substringData](offset, count) {
-      return this.substringData(offset, count);
+    [dartx.substringData](...args) {
+      return this.substringData.apply(this, args);
     }
-    [dartx.after](nodes) {
-      return this.after(nodes);
+    [dartx.after](...args) {
+      return this.after.apply(this, args);
     }
-    [dartx.before](nodes) {
-      return this.before(nodes);
+    [dartx.before](...args) {
+      return this.before.apply(this, args);
     }
     get [dartx.nextElementSibling]() {
       return this.nextElementSibling;
@@ -44085,11 +44085,11 @@
     get [dartx.wholeText]() {
       return this.wholeText;
     }
-    [dartx.getDestinationInsertionPoints]() {
-      return this.getDestinationInsertionPoints();
+    [dartx.getDestinationInsertionPoints](...args) {
+      return this.getDestinationInsertionPoints.apply(this, args);
     }
-    [dartx.splitText](offset) {
-      return this.splitText(offset);
+    [dartx.splitText](...args) {
+      return this.splitText.apply(this, args);
     }
   };
   dart.setSignature(html$.Text, {
@@ -44126,14 +44126,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.delete](cacheName) {
-      return this.delete(cacheName);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.has](cacheName) {
-      return this.has(cacheName);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
-    [dartx.keys]() {
-      return this.keys();
+    [dartx.keys](...args) {
+      return this.keys.apply(this, args);
     }
     [dartx.match](request, options) {
       if (options === void 0) options = null;
@@ -44143,14 +44143,14 @@
       }
       return this[_match_2](request);
     }
-    [_match_1](request, options) {
-      return this.match(request, options);
+    [_match_1](...args) {
+      return this.match.apply(this, args);
     }
-    [_match_2](request) {
-      return this.match(request);
+    [_match_2](...args) {
+      return this.match.apply(this, args);
     }
-    [dartx.open](cacheName) {
-      return this.open(cacheName);
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
   };
   dart.setSignature(html$.CacheStorage, {
@@ -44216,14 +44216,14 @@
       }
       return this[_getContext_2](contextId);
     }
-    [_getContext_1](contextId, attributes) {
-      return this.getContext(contextId, attributes);
+    [_getContext_1](...args) {
+      return this.getContext.apply(this, args);
     }
-    [_getContext_2](contextId) {
-      return this.getContext(contextId);
+    [_getContext_2](...args) {
+      return this.getContext.apply(this, args);
     }
-    [_toDataUrl](type, arguments_OR_quality) {
-      return this.toDataURL(type, arguments_OR_quality);
+    [_toDataUrl](...args) {
+      return this.toDataURL.apply(this, args);
     }
     get [dartx.onWebGlContextLost]() {
       return html$.CanvasElement.webGlContextLostEvent.forElement(this);
@@ -44300,8 +44300,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.addColorStop](offset, color) {
-      return this.addColorStop(offset, color);
+    [dartx.addColorStop](...args) {
+      return this.addColorStop.apply(this, args);
     }
   };
   dart.setSignature(html$.CanvasGradient, {
@@ -44316,8 +44316,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.setTransform](transform) {
-      return this.setTransform(transform);
+    [dartx.setTransform](...args) {
+      return this.setTransform.apply(this, args);
     }
   };
   dart.setSignature(html$.CanvasPattern, {
@@ -44546,23 +44546,23 @@
       this[_addHitRegion_2]();
       return;
     }
-    [_addHitRegion_1](options) {
-      return this.addHitRegion(options);
+    [_addHitRegion_1](...args) {
+      return this.addHitRegion.apply(this, args);
     }
-    [_addHitRegion_2]() {
-      return this.addHitRegion();
+    [_addHitRegion_2](...args) {
+      return this.addHitRegion.apply(this, args);
     }
-    [dartx.beginPath]() {
-      return this.beginPath();
+    [dartx.beginPath](...args) {
+      return this.beginPath.apply(this, args);
     }
-    [dartx.clearHitRegions]() {
-      return this.clearHitRegions();
+    [dartx.clearHitRegions](...args) {
+      return this.clearHitRegions.apply(this, args);
     }
-    [dartx.clearRect](x, y, width, height) {
-      return this.clearRect(x, y, width, height);
+    [dartx.clearRect](...args) {
+      return this.clearRect.apply(this, args);
     }
-    [dartx.clip](path_OR_winding, winding) {
-      return this.clip(path_OR_winding, winding);
+    [dartx.clip](...args) {
+      return this.clip.apply(this, args);
     }
     [dartx.createImageData](imagedata_OR_sw, sh) {
       if (sh === void 0) sh = null;
@@ -44575,53 +44575,53 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_createImageData_1](imagedata) {
-      return this.createImageData(imagedata);
+    [_createImageData_1](...args) {
+      return this.createImageData.apply(this, args);
     }
-    [_createImageData_2](sw, sh) {
-      return this.createImageData(sw, sh);
+    [_createImageData_2](...args) {
+      return this.createImageData.apply(this, args);
     }
-    [dartx.createLinearGradient](x0, y0, x1, y1) {
-      return this.createLinearGradient(x0, y0, x1, y1);
+    [dartx.createLinearGradient](...args) {
+      return this.createLinearGradient.apply(this, args);
     }
-    [dartx.createPattern](image, repetitionType) {
-      return this.createPattern(image, repetitionType);
+    [dartx.createPattern](...args) {
+      return this.createPattern.apply(this, args);
     }
-    [dartx.createRadialGradient](x0, y0, r0, x1, y1, r1) {
-      return this.createRadialGradient(x0, y0, r0, x1, y1, r1);
+    [dartx.createRadialGradient](...args) {
+      return this.createRadialGradient.apply(this, args);
     }
-    [dartx.drawFocusIfNeeded](element_OR_path, element) {
-      return this.drawFocusIfNeeded(element_OR_path, element);
+    [dartx.drawFocusIfNeeded](...args) {
+      return this.drawFocusIfNeeded.apply(this, args);
     }
-    [dartx.fillRect](x, y, width, height) {
-      return this.fillRect(x, y, width, height);
+    [dartx.fillRect](...args) {
+      return this.fillRect.apply(this, args);
     }
     [dartx.getContextAttributes]() {
       return html_common.convertNativeToDart_Dictionary(this[_getContextAttributes_1]());
     }
-    [_getContextAttributes_1]() {
-      return this.getContextAttributes();
+    [_getContextAttributes_1](...args) {
+      return this.getContextAttributes.apply(this, args);
     }
     [dartx.getImageData](sx, sy, sw, sh) {
       return html_common.convertNativeToDart_ImageData(this[_getImageData_1](sx, sy, sw, sh));
     }
-    [_getImageData_1](sx, sy, sw, sh) {
-      return this.getImageData(sx, sy, sw, sh);
+    [_getImageData_1](...args) {
+      return this.getImageData.apply(this, args);
     }
-    [_getLineDash]() {
-      return this.getLineDash();
+    [_getLineDash](...args) {
+      return this.getLineDash.apply(this, args);
     }
-    [dartx.isContextLost]() {
-      return this.isContextLost();
+    [dartx.isContextLost](...args) {
+      return this.isContextLost.apply(this, args);
     }
-    [dartx.isPointInPath](path_OR_x, x_OR_y, winding_OR_y, winding) {
-      return this.isPointInPath(path_OR_x, x_OR_y, winding_OR_y, winding);
+    [dartx.isPointInPath](...args) {
+      return this.isPointInPath.apply(this, args);
     }
-    [dartx.isPointInStroke](path_OR_x, x_OR_y, y) {
-      return this.isPointInStroke(path_OR_x, x_OR_y, y);
+    [dartx.isPointInStroke](...args) {
+      return this.isPointInStroke.apply(this, args);
     }
-    [dartx.measureText](text) {
-      return this.measureText(text);
+    [dartx.measureText](...args) {
+      return this.measureText.apply(this, args);
     }
     [dartx.putImageData](imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
       if (dirtyX === void 0) dirtyX = null;
@@ -44640,77 +44640,77 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_putImageData_1](imagedata, dx, dy) {
-      return this.putImageData(imagedata, dx, dy);
+    [_putImageData_1](...args) {
+      return this.putImageData.apply(this, args);
     }
-    [_putImageData_2](imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
-      return this.putImageData(imagedata, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight);
+    [_putImageData_2](...args) {
+      return this.putImageData.apply(this, args);
     }
-    [dartx.removeHitRegion](id) {
-      return this.removeHitRegion(id);
+    [dartx.removeHitRegion](...args) {
+      return this.removeHitRegion.apply(this, args);
     }
-    [dartx.resetTransform]() {
-      return this.resetTransform();
+    [dartx.resetTransform](...args) {
+      return this.resetTransform.apply(this, args);
     }
-    [dartx.restore]() {
-      return this.restore();
+    [dartx.restore](...args) {
+      return this.restore.apply(this, args);
     }
-    [dartx.rotate](angle) {
-      return this.rotate(angle);
+    [dartx.rotate](...args) {
+      return this.rotate.apply(this, args);
     }
-    [dartx.save]() {
-      return this.save();
+    [dartx.save](...args) {
+      return this.save.apply(this, args);
     }
-    [dartx.scale](x, y) {
-      return this.scale(x, y);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scrollPathIntoView](path) {
-      return this.scrollPathIntoView(path);
+    [dartx.scrollPathIntoView](...args) {
+      return this.scrollPathIntoView.apply(this, args);
     }
-    [dartx.setTransform](a, b, c, d, e, f) {
-      return this.setTransform(a, b, c, d, e, f);
+    [dartx.setTransform](...args) {
+      return this.setTransform.apply(this, args);
     }
-    [dartx.stroke](path) {
-      return this.stroke(path);
+    [dartx.stroke](...args) {
+      return this.stroke.apply(this, args);
     }
-    [dartx.strokeRect](x, y, width, height) {
-      return this.strokeRect(x, y, width, height);
+    [dartx.strokeRect](...args) {
+      return this.strokeRect.apply(this, args);
     }
-    [dartx.strokeText](text, x, y, maxWidth) {
-      return this.strokeText(text, x, y, maxWidth);
+    [dartx.strokeText](...args) {
+      return this.strokeText.apply(this, args);
     }
-    [dartx.transform](a, b, c, d, e, f) {
-      return this.transform(a, b, c, d, e, f);
+    [dartx.transform](...args) {
+      return this.transform.apply(this, args);
     }
-    [dartx.translate](x, y) {
-      return this.translate(x, y);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
-    [_arc](x, y, radius, startAngle, endAngle, anticlockwise) {
-      return this.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+    [_arc](...args) {
+      return this.arc.apply(this, args);
     }
-    [dartx.arcTo](x1, y1, x2, y2, radius) {
-      return this.arcTo(x1, y1, x2, y2, radius);
+    [dartx.arcTo](...args) {
+      return this.arcTo.apply(this, args);
     }
-    [dartx.bezierCurveTo](cp1x, cp1y, cp2x, cp2y, x, y) {
-      return this.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);
+    [dartx.bezierCurveTo](...args) {
+      return this.bezierCurveTo.apply(this, args);
     }
-    [dartx.closePath]() {
-      return this.closePath();
+    [dartx.closePath](...args) {
+      return this.closePath.apply(this, args);
     }
-    [dartx.ellipse](x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
-      return this.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);
+    [dartx.ellipse](...args) {
+      return this.ellipse.apply(this, args);
     }
-    [dartx.lineTo](x, y) {
-      return this.lineTo(x, y);
+    [dartx.lineTo](...args) {
+      return this.lineTo.apply(this, args);
     }
-    [dartx.moveTo](x, y) {
-      return this.moveTo(x, y);
+    [dartx.moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.quadraticCurveTo](cpx, cpy, x, y) {
-      return this.quadraticCurveTo(cpx, cpy, x, y);
+    [dartx.quadraticCurveTo](...args) {
+      return this.quadraticCurveTo.apply(this, args);
     }
-    [dartx.rect](x, y, width, height) {
-      return this.rect(x, y, width, height);
+    [dartx.rect](...args) {
+      return this.rect.apply(this, args);
     }
     [dartx.createImageDataFromImageData](imagedata) {
       return this.createImageData(imagedata);
@@ -44746,14 +44746,14 @@
         this[dartx.drawImageScaledFromSource](source, sourceRect[dartx.left], sourceRect[dartx.top], sourceRect[dartx.width], sourceRect[dartx.height], destRect[dartx.left], destRect[dartx.top], destRect[dartx.width], destRect[dartx.height]);
       }
     }
-    [dartx.drawImage](source, destX, destY) {
-      return this.drawImage(source, destX, destY);
+    [dartx.drawImage](...args) {
+      return this.drawImage.apply(this, args);
     }
-    [dartx.drawImageScaled](source, destX, destY, destWidth, destHeight) {
-      return this.drawImage(source, destX, destY, destWidth, destHeight);
+    [dartx.drawImageScaled](...args) {
+      return this.drawImage.apply(this, args);
     }
-    [dartx.drawImageScaledFromSource](source, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight) {
-      return this.drawImage(source, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight);
+    [dartx.drawImageScaledFromSource](...args) {
+      return this.drawImage.apply(this, args);
     }
     get [dartx.lineDashOffset]() {
       return this.lineDashOffset || this.webkitLineDashOffset;
@@ -45000,11 +45000,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.Client, {
@@ -45032,8 +45032,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.claim]() {
-      return this.claim();
+    [dartx.claim](...args) {
+      return this.claim.apply(this, args);
     }
     [dartx.matchAll](options) {
       if (options === void 0) options = null;
@@ -45043,14 +45043,14 @@
       }
       return this[_matchAll_2]();
     }
-    [_matchAll_1](options) {
-      return this.matchAll(options);
+    [_matchAll_1](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [_matchAll_2]() {
-      return this.matchAll();
+    [_matchAll_2](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [dartx.openWindow](url) {
-      return this.openWindow(url);
+    [dartx.openWindow](...args) {
+      return this.openWindow.apply(this, args);
     }
   };
   dart.setSignature(html$.Clients, {
@@ -45208,8 +45208,8 @@
     get [_which]() {
       return this.which;
     }
-    [_initUIEvent](type, bubbles, cancelable, view, detail) {
-      return this.initUIEvent(type, bubbles, cancelable, view, detail);
+    [_initUIEvent](...args) {
+      return this.initUIEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.UIEvent, {
@@ -45272,8 +45272,8 @@
     get [dartx.data]() {
       return this.data;
     }
-    [_initCompositionEvent](type, bubbles, cancelable, view, data) {
-      return this.initCompositionEvent(type, bubbles, cancelable, view, data);
+    [_initCompositionEvent](...args) {
+      return this.initCompositionEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.CompositionEvent, {
@@ -45332,11 +45332,11 @@
     set [dartx.transform](value) {
       this.transform = value;
     }
-    [dartx.disconnect]() {
-      return this.disconnect();
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
-    [dartx.supports](attribute) {
-      return this.supports(attribute);
+    [dartx.supports](...args) {
+      return this.supports.apply(this, args);
     }
   };
   dart.setSignature(html$.CompositorProxy, {
@@ -45385,14 +45385,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.terminate]() {
-      return this.terminate();
+    [dartx.terminate](...args) {
+      return this.terminate.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.CompositorWorker.errorEvent.forTarget(this);
@@ -45491,8 +45491,8 @@
     get [dartx.self]() {
       return this.self;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.fetch](input, init) {
       if (init === void 0) init = null;
@@ -45502,17 +45502,17 @@
       }
       return this[_fetch_2](input);
     }
-    [_fetch_1](input, init) {
-      return this.fetch(input, init);
+    [_fetch_1](...args) {
+      return this.fetch.apply(this, args);
     }
-    [_fetch_2](input) {
-      return this.fetch(input);
+    [_fetch_2](...args) {
+      return this.fetch.apply(this, args);
     }
-    [dartx.importScripts](urls) {
-      return this.importScripts(urls);
+    [dartx.importScripts](...args) {
+      return this.importScripts.apply(this, args);
     }
-    [_webkitRequestFileSystem](type, size, successCallback, errorCallback) {
-      return this.webkitRequestFileSystem(type, size, successCallback, errorCallback);
+    [_webkitRequestFileSystem](...args) {
+      return this.webkitRequestFileSystem.apply(this, args);
     }
     [dartx.webkitRequestFileSystem](type, size) {
       let completer = CompleterOfFileSystem().new();
@@ -45523,14 +45523,14 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.requestFileSystemSync](type, size) {
-      return this.webkitRequestFileSystemSync(type, size);
+    [dartx.requestFileSystemSync](...args) {
+      return this.webkitRequestFileSystemSync.apply(this, args);
     }
-    [dartx.resolveLocalFileSystemSyncUrl](url) {
-      return this.webkitResolveLocalFileSystemSyncURL(url);
+    [dartx.resolveLocalFileSystemSyncUrl](...args) {
+      return this.webkitResolveLocalFileSystemSyncURL.apply(this, args);
     }
-    [_webkitResolveLocalFileSystemUrl](url, successCallback, errorCallback) {
-      return this.webkitResolveLocalFileSystemURL(url, successCallback, errorCallback);
+    [_webkitResolveLocalFileSystemUrl](...args) {
+      return this.webkitResolveLocalFileSystemURL.apply(this, args);
     }
     [dartx.webkitResolveLocalFileSystemUrl](url) {
       let completer = CompleterOfEntry().new();
@@ -45541,29 +45541,29 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.atob](atob) {
-      return this.atob(atob);
+    [dartx.atob](...args) {
+      return this.atob.apply(this, args);
     }
-    [dartx.btoa](btoa) {
-      return this.btoa(btoa);
+    [dartx.btoa](...args) {
+      return this.btoa.apply(this, args);
     }
-    [_setInterval_String](handler, timeout, arguments$) {
-      return this.setInterval(handler, timeout, arguments$);
+    [_setInterval_String](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout_String](handler, timeout, arguments$) {
-      return this.setTimeout(handler, timeout, arguments$);
+    [_setTimeout_String](...args) {
+      return this.setTimeout.apply(this, args);
     }
-    [_clearInterval](handle) {
-      return this.clearInterval(handle);
+    [_clearInterval](...args) {
+      return this.clearInterval.apply(this, args);
     }
-    [_clearTimeout](handle) {
-      return this.clearTimeout(handle);
+    [_clearTimeout](...args) {
+      return this.clearTimeout.apply(this, args);
     }
-    [_setInterval](handler, timeout) {
-      return this.setInterval(handler, timeout);
+    [_setInterval](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout](handler, timeout) {
-      return this.setTimeout(handler, timeout);
+    [_setTimeout](...args) {
+      return this.setTimeout.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.WorkerGlobalScope.errorEvent.forTarget(this);
@@ -45628,8 +45628,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancelAnimationFrame](handle) {
-      return this.cancelAnimationFrame(handle);
+    [dartx.cancelAnimationFrame](...args) {
+      return this.cancelAnimationFrame.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -45642,14 +45642,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.requestAnimationFrame](callback) {
-      return this.requestAnimationFrame(callback);
+    [dartx.requestAnimationFrame](...args) {
+      return this.requestAnimationFrame.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.CompositorWorkerGlobalScope.messageEvent.forTarget(this);
@@ -45799,14 +45799,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.assertCondition](condition, arg) {
-      return this.assert(condition, arg);
+    [dartx.assertCondition](...args) {
+      return this.assert.apply(this, args);
     }
-    [dartx.timeline](title) {
-      return this.timeline(title);
+    [dartx.timeline](...args) {
+      return this.timeline.apply(this, args);
     }
-    [dartx.timelineEnd](title) {
-      return this.timelineEnd(title);
+    [dartx.timelineEnd](...args) {
+      return this.timelineEnd.apply(this, args);
     }
   };
   dart.setSignature(html$.ConsoleBase, {
@@ -45842,8 +45842,8 @@
     set [dartx.select](value) {
       this.select = value;
     }
-    [dartx.getDistributedNodes]() {
-      return this.getDistributedNodes();
+    [dartx.getDistributedNodes](...args) {
+      return this.getDistributedNodes.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ContentElement, 'created');
@@ -45950,8 +45950,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.notifySignedIn](credential) {
-      return this.notifySignedIn(credential);
+    [dartx.notifySignedIn](...args) {
+      return this.notifySignedIn.apply(this, args);
     }
     [dartx.request](options) {
       if (options === void 0) options = null;
@@ -45961,14 +45961,14 @@
       }
       return this[_request_2]();
     }
-    [_request_1](options) {
-      return this.request(options);
+    [_request_1](...args) {
+      return this.request.apply(this, args);
     }
-    [_request_2]() {
-      return this.request();
+    [_request_2](...args) {
+      return this.request.apply(this, args);
     }
-    [dartx.requireUserMediation]() {
-      return this.requireUserMediation();
+    [dartx.requireUserMediation](...args) {
+      return this.requireUserMediation.apply(this, args);
     }
   };
   dart.setSignature(html$.CredentialsContainer, {
@@ -45993,8 +45993,8 @@
     get [dartx.client]() {
       return this.client;
     }
-    [dartx.acceptConnection](shouldAccept) {
-      return this.acceptConnection(shouldAccept);
+    [dartx.acceptConnection](...args) {
+      return this.acceptConnection.apply(this, args);
     }
   };
   dart.setSignature(html$.CrossOriginConnectEvent, {
@@ -46029,11 +46029,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.CrossOriginServiceWorkerClient, {
@@ -46067,8 +46067,8 @@
     get [dartx.subtle]() {
       return this.subtle;
     }
-    [_getRandomValues](array) {
-      return this.getRandomValues(array);
+    [_getRandomValues](...args) {
+      return this.getRandomValues.apply(this, args);
     }
   };
   dart.setSignature(html$.Crypto, {
@@ -46237,11 +46237,11 @@
     get [dartx.cssRules]() {
       return this.cssRules;
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssGroupingRule, {
@@ -46329,17 +46329,17 @@
     set [dartx.name](value) {
       this.name = value;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.appendRule](rule) {
-      return this.appendRule(rule);
+    [dartx.appendRule](...args) {
+      return this.appendRule.apply(this, args);
     }
-    [dartx.deleteRule](select) {
-      return this.deleteRule(select);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.findRule](select) {
-      return this.findRule(select);
+    [dartx.findRule](...args) {
+      return this.findRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssKeyframesRule, {
@@ -50877,17 +50877,17 @@
     get [dartx.parentRule]() {
       return this.parentRule;
     }
-    [dartx.getPropertyPriority](property) {
-      return this.getPropertyPriority(property);
+    [dartx.getPropertyPriority](...args) {
+      return this.getPropertyPriority.apply(this, args);
     }
-    [_getPropertyValue](property) {
-      return this.getPropertyValue(property);
+    [_getPropertyValue](...args) {
+      return this.getPropertyValue.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.removeProperty](property) {
-      return this.removeProperty(property);
+    [dartx.removeProperty](...args) {
+      return this.removeProperty.apply(this, args);
     }
     get [dartx.background]() {
       return this[_background];
@@ -52869,17 +52869,17 @@
     get [dartx.rules]() {
       return this.rules;
     }
-    [dartx.addRule](selector, style, index) {
-      return this.addRule(selector, style, index);
+    [dartx.addRule](...args) {
+      return this.addRule.apply(this, args);
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
-    [dartx.removeRule](index) {
-      return this.removeRule(index);
+    [dartx.removeRule](...args) {
+      return this.removeRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssStyleSheet, {
@@ -52913,11 +52913,11 @@
     get [dartx.cssRules]() {
       return this.cssRules;
     }
-    [dartx.deleteRule](index) {
-      return this.deleteRule(index);
+    [dartx.deleteRule](...args) {
+      return this.deleteRule.apply(this, args);
     }
-    [dartx.insertRule](rule, index) {
-      return this.insertRule(rule, index);
+    [dartx.insertRule](...args) {
+      return this.insertRule.apply(this, args);
     }
   };
   dart.setSignature(html$.CssSupportsRule, {
@@ -53007,8 +53007,8 @@
     get [_get__detail]() {
       return this.detail;
     }
-    [_initCustomEvent](type, bubbles, cancelable, detail) {
-      return this.initCustomEvent(type, bubbles, cancelable, detail);
+    [_initCustomEvent](...args) {
+      return this.initCustomEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.CustomEvent, {
@@ -53120,17 +53120,17 @@
     get [dartx.types]() {
       return this.types;
     }
-    [dartx.clearData](format) {
-      return this.clearData(format);
+    [dartx.clearData](...args) {
+      return this.clearData.apply(this, args);
     }
-    [dartx.getData](format) {
-      return this.getData(format);
+    [dartx.getData](...args) {
+      return this.getData.apply(this, args);
     }
-    [dartx.setData](format, data) {
-      return this.setData(format, data);
+    [dartx.setData](...args) {
+      return this.setData.apply(this, args);
     }
-    [dartx.setDragImage](image, x, y) {
-      return this.setDragImage(image, x, y);
+    [dartx.setDragImage](...args) {
+      return this.setDragImage.apply(this, args);
     }
   };
   dart.setSignature(html$.DataTransfer, {
@@ -53168,11 +53168,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.getAsFile]() {
-      return this.getAsFile();
+    [dartx.getAsFile](...args) {
+      return this.getAsFile.apply(this, args);
     }
-    [_getAsString](callback) {
-      return this.getAsString(callback);
+    [_getAsString](...args) {
+      return this.getAsString.apply(this, args);
     }
     [dartx.getAsString]() {
       let completer = CompleterOfString().new();
@@ -53181,8 +53181,8 @@
       }, StringTovoid$()));
       return completer.future;
     }
-    [dartx.getAsEntry]() {
-      return this.webkitGetAsEntry();
+    [dartx.getAsEntry](...args) {
+      return this.webkitGetAsEntry.apply(this, args);
     }
   };
   dart.setSignature(html$.DataTransferItem, {
@@ -53216,23 +53216,23 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.add](data_OR_file, type) {
-      return this.add(data_OR_file, type);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.addData](data, type) {
-      return this.add(data, type);
+    [dartx.addData](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.addFile](file) {
-      return this.add(file);
+    [dartx.addFile](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.remove](index) {
-      return this.remove(index);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
     [dartx._get](index) {
       return this[index];
@@ -53272,11 +53272,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.DedicatedWorkerGlobalScope.messageEvent.forTarget(this);
@@ -53344,11 +53344,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.queryUsageAndQuota](storageType, usageCallback, errorCallback) {
-      return this.queryUsageAndQuota(storageType, usageCallback, errorCallback);
+    [dartx.queryUsageAndQuota](...args) {
+      return this.queryUsageAndQuota.apply(this, args);
     }
-    [dartx.requestQuota](storageType, newQuotaInBytes, quotaCallback, errorCallback) {
-      return this.requestQuota(storageType, newQuotaInBytes, quotaCallback, errorCallback);
+    [dartx.requestQuota](...args) {
+      return this.requestQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.DeprecatedStorageInfo, {
@@ -53373,11 +53373,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.queryUsageAndQuota](usageCallback, errorCallback) {
-      return this.queryUsageAndQuota(usageCallback, errorCallback);
+    [dartx.queryUsageAndQuota](...args) {
+      return this.queryUsageAndQuota.apply(this, args);
     }
-    [dartx.requestQuota](newQuotaInBytes, quotaCallback, errorCallback) {
-      return this.requestQuota(newQuotaInBytes, quotaCallback, errorCallback);
+    [dartx.requestQuota](...args) {
+      return this.requestQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.DeprecatedStorageQuota, {
@@ -53512,8 +53512,8 @@
     get [dartx.rotationRate]() {
       return this.rotationRate;
     }
-    [dartx.initDeviceMotionEvent](type, bubbles, cancelable, acceleration, accelerationIncludingGravity, rotationRate, interval) {
-      return this.initDeviceMotionEvent(type, bubbles, cancelable, acceleration, accelerationIncludingGravity, rotationRate, interval);
+    [dartx.initDeviceMotionEvent](...args) {
+      return this.initDeviceMotionEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.DeviceMotionEvent, {
@@ -53561,8 +53561,8 @@
     get [dartx.gamma]() {
       return this.gamma;
     }
-    [_initDeviceOrientationEvent](type, bubbles, cancelable, alpha, beta, gamma, absolute) {
-      return this.initDeviceOrientationEvent(type, bubbles, cancelable, alpha, beta, gamma, absolute);
+    [_initDeviceOrientationEvent](...args) {
+      return this.initDeviceOrientationEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.DeviceOrientationEvent, {
@@ -53635,14 +53635,14 @@
     set [dartx.returnValue](value) {
       this.returnValue = value;
     }
-    [dartx.close](returnValue) {
-      return this.close(returnValue);
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.show]() {
-      return this.show();
+    [dartx.show](...args) {
+      return this.show.apply(this, args);
     }
-    [dartx.showModal]() {
-      return this.showModal();
+    [dartx.showModal](...args) {
+      return this.showModal.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.DialogElement, 'created');
@@ -53712,8 +53712,8 @@
     get [dartx.name]() {
       return this.name;
     }
-    [_copyTo](parent, opts) {
-      return this.copyTo(parent, opts);
+    [_copyTo](...args) {
+      return this.copyTo.apply(this, args);
     }
     [dartx.copyTo](parent, opts) {
       let name = opts && 'name' in opts ? opts.name : null;
@@ -53725,8 +53725,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_getMetadata](successCallback, errorCallback) {
-      return this.getMetadata(successCallback, errorCallback);
+    [_getMetadata](...args) {
+      return this.getMetadata.apply(this, args);
     }
     [dartx.getMetadata]() {
       let completer = CompleterOfMetadata().new();
@@ -53737,8 +53737,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_getParent](successCallback, errorCallback) {
-      return this.getParent(successCallback, errorCallback);
+    [_getParent](...args) {
+      return this.getParent.apply(this, args);
     }
     [dartx.getParent]() {
       let completer = CompleterOfEntry().new();
@@ -53749,8 +53749,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_moveTo](parent, opts) {
-      return this.moveTo(parent, opts);
+    [_moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
     [dartx.moveTo](parent, opts) {
       let name = opts && 'name' in opts ? opts.name : null;
@@ -53762,8 +53762,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_remove$](successCallback, errorCallback) {
-      return this.remove(successCallback, errorCallback);
+    [_remove$](...args) {
+      return this.remove.apply(this, args);
     }
     [dartx.remove]() {
       let completer = async.Completer.new();
@@ -53774,8 +53774,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.toUrl]() {
-      return this.toURL();
+    [dartx.toUrl](...args) {
+      return this.toURL.apply(this, args);
     }
   };
   dart.setSignature(html$.Entry, {
@@ -53828,8 +53828,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.createReader]() {
-      return this.createReader();
+    [dartx.createReader](...args) {
+      return this.createReader.apply(this, args);
     }
     [__getDirectory](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53853,17 +53853,17 @@
       this[__getDirectory_4](path);
       return;
     }
-    [__getDirectory_1](path, options, successCallback, errorCallback) {
-      return this.getDirectory(path, options, successCallback, errorCallback);
+    [__getDirectory_1](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_2](path, options, successCallback) {
-      return this.getDirectory(path, options, successCallback);
+    [__getDirectory_2](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_3](path, options) {
-      return this.getDirectory(path, options);
+    [__getDirectory_3](...args) {
+      return this.getDirectory.apply(this, args);
     }
-    [__getDirectory_4](path) {
-      return this.getDirectory(path);
+    [__getDirectory_4](...args) {
+      return this.getDirectory.apply(this, args);
     }
     [_getDirectory](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53897,17 +53897,17 @@
       this[__getFile_4](path);
       return;
     }
-    [__getFile_1](path, options, successCallback, errorCallback) {
-      return this.getFile(path, options, successCallback, errorCallback);
+    [__getFile_1](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_2](path, options, successCallback) {
-      return this.getFile(path, options, successCallback);
+    [__getFile_2](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_3](path, options) {
-      return this.getFile(path, options);
+    [__getFile_3](...args) {
+      return this.getFile.apply(this, args);
     }
-    [__getFile_4](path) {
-      return this.getFile(path);
+    [__getFile_4](...args) {
+      return this.getFile.apply(this, args);
     }
     [_getFile](path, opts) {
       let options = opts && 'options' in opts ? opts.options : null;
@@ -53919,8 +53919,8 @@
         }, FileErrorTovoid())});
       return completer.future;
     }
-    [_removeRecursively](successCallback, errorCallback) {
-      return this.removeRecursively(successCallback, errorCallback);
+    [_removeRecursively](...args) {
+      return this.removeRecursively.apply(this, args);
     }
     [dartx.removeRecursively]() {
       let completer = async.Completer.new();
@@ -53965,8 +53965,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_readEntries](successCallback, errorCallback) {
-      return this.readEntries(successCallback, errorCallback);
+    [_readEntries](...args) {
+      return this.readEntries.apply(this, args);
     }
     [dartx.readEntries]() {
       let completer = CompleterOfListOfEntry().new();
@@ -54263,93 +54263,93 @@
     get [_webkitVisibilityState]() {
       return this.webkitVisibilityState;
     }
-    [dartx.adoptNode](node) {
-      return this.adoptNode(node);
+    [dartx.adoptNode](...args) {
+      return this.adoptNode.apply(this, args);
     }
-    [_caretRangeFromPoint](x, y) {
-      return this.caretRangeFromPoint(x, y);
+    [_caretRangeFromPoint](...args) {
+      return this.caretRangeFromPoint.apply(this, args);
     }
-    [dartx.createDocumentFragment]() {
-      return this.createDocumentFragment();
+    [dartx.createDocumentFragment](...args) {
+      return this.createDocumentFragment.apply(this, args);
     }
-    [_createElement](localName_OR_tagName, typeExtension) {
-      return this.createElement(localName_OR_tagName, typeExtension);
+    [_createElement](...args) {
+      return this.createElement.apply(this, args);
     }
-    [_createElementNS](namespaceURI, qualifiedName, typeExtension) {
-      return this.createElementNS(namespaceURI, qualifiedName, typeExtension);
+    [_createElementNS](...args) {
+      return this.createElementNS.apply(this, args);
     }
-    [_createEvent](eventType) {
-      return this.createEvent(eventType);
+    [_createEvent](...args) {
+      return this.createEvent.apply(this, args);
     }
-    [dartx.createRange]() {
-      return this.createRange();
+    [dartx.createRange](...args) {
+      return this.createRange.apply(this, args);
     }
-    [_createTextNode](data) {
-      return this.createTextNode(data);
+    [_createTextNode](...args) {
+      return this.createTextNode.apply(this, args);
     }
     [_createTouch](window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force) {
       let target_1 = html$._convertDartToNative_EventTarget(target);
       return this[_createTouch_1](window, target_1, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force);
     }
-    [_createTouch_1](window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force) {
-      return this.createTouch(window, target, identifier, pageX, pageY, screenX, screenY, radiusX, radiusY, rotationAngle, force);
+    [_createTouch_1](...args) {
+      return this.createTouch.apply(this, args);
     }
-    [_createTouchList](touches) {
-      return this.createTouchList(touches);
+    [_createTouchList](...args) {
+      return this.createTouchList.apply(this, args);
     }
-    [_elementFromPoint](x, y) {
-      return this.elementFromPoint(x, y);
+    [_elementFromPoint](...args) {
+      return this.elementFromPoint.apply(this, args);
     }
-    [dartx.elementsFromPoint](x, y) {
-      return this.elementsFromPoint(x, y);
+    [dartx.elementsFromPoint](...args) {
+      return this.elementsFromPoint.apply(this, args);
     }
-    [dartx.execCommand](commandId, showUI, value) {
-      return this.execCommand(commandId, showUI, value);
+    [dartx.execCommand](...args) {
+      return this.execCommand.apply(this, args);
     }
-    [dartx.exitFullscreen]() {
-      return this.exitFullscreen();
+    [dartx.exitFullscreen](...args) {
+      return this.exitFullscreen.apply(this, args);
     }
-    [dartx.exitPointerLock]() {
-      return this.exitPointerLock();
+    [dartx.exitPointerLock](...args) {
+      return this.exitPointerLock.apply(this, args);
     }
-    [_getCssCanvasContext](contextId, name, width, height) {
-      return this.getCSSCanvasContext(contextId, name, width, height);
+    [_getCssCanvasContext](...args) {
+      return this.getCSSCanvasContext.apply(this, args);
     }
-    [dartx.getElementsByClassName](classNames) {
-      return this.getElementsByClassName(classNames);
+    [dartx.getElementsByClassName](...args) {
+      return this.getElementsByClassName.apply(this, args);
     }
-    [dartx.getElementsByName](elementName) {
-      return this.getElementsByName(elementName);
+    [dartx.getElementsByName](...args) {
+      return this.getElementsByName.apply(this, args);
     }
-    [dartx.getElementsByTagName](localName) {
-      return this.getElementsByTagName(localName);
+    [dartx.getElementsByTagName](...args) {
+      return this.getElementsByTagName.apply(this, args);
     }
-    [dartx.importNode](node, deep) {
-      return this.importNode(node, deep);
+    [dartx.importNode](...args) {
+      return this.importNode.apply(this, args);
     }
-    [dartx.queryCommandEnabled](commandId) {
-      return this.queryCommandEnabled(commandId);
+    [dartx.queryCommandEnabled](...args) {
+      return this.queryCommandEnabled.apply(this, args);
     }
-    [dartx.queryCommandIndeterm](commandId) {
-      return this.queryCommandIndeterm(commandId);
+    [dartx.queryCommandIndeterm](...args) {
+      return this.queryCommandIndeterm.apply(this, args);
     }
-    [dartx.queryCommandState](commandId) {
-      return this.queryCommandState(commandId);
+    [dartx.queryCommandState](...args) {
+      return this.queryCommandState.apply(this, args);
     }
-    [dartx.queryCommandSupported](commandId) {
-      return this.queryCommandSupported(commandId);
+    [dartx.queryCommandSupported](...args) {
+      return this.queryCommandSupported.apply(this, args);
     }
-    [dartx.queryCommandValue](commandId) {
-      return this.queryCommandValue(commandId);
+    [dartx.queryCommandValue](...args) {
+      return this.queryCommandValue.apply(this, args);
     }
-    [dartx.transformDocumentToTreeView](noStyleMessage) {
-      return this.transformDocumentToTreeView(noStyleMessage);
+    [dartx.transformDocumentToTreeView](...args) {
+      return this.transformDocumentToTreeView.apply(this, args);
     }
-    [_webkitExitFullscreen]() {
-      return this.webkitExitFullscreen();
+    [_webkitExitFullscreen](...args) {
+      return this.webkitExitFullscreen.apply(this, args);
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
     get [_childElementCount]() {
       return this.childElementCount;
@@ -54363,11 +54363,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.Element.abortEvent.forTarget(this);
@@ -54902,8 +54902,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
     get [_childElementCount]() {
       return this.childElementCount;
@@ -54914,11 +54914,11 @@
     get [_lastElementChild]() {
       return this.lastElementChild;
     }
-    [dartx.querySelector](selectors) {
-      return this.querySelector(selectors);
+    [dartx.querySelector](...args) {
+      return this.querySelector.apply(this, args);
     }
-    [_querySelectorAll](selectors) {
-      return this.querySelectorAll(selectors);
+    [_querySelectorAll](...args) {
+      return this.querySelectorAll.apply(this, args);
     }
   };
   html$.DocumentFragment[dart.implements] = () => [html$.NonElementParentNode, html$.ParentNode];
@@ -55083,17 +55083,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.createDocument](namespaceURI, qualifiedName, doctype) {
-      return this.createDocument(namespaceURI, qualifiedName, doctype);
+    [dartx.createDocument](...args) {
+      return this.createDocument.apply(this, args);
     }
-    [dartx.createDocumentType](qualifiedName, publicId, systemId) {
-      return this.createDocumentType(qualifiedName, publicId, systemId);
+    [dartx.createDocumentType](...args) {
+      return this.createDocumentType.apply(this, args);
     }
-    [dartx.createHtmlDocument](title) {
-      return this.createHTMLDocument(title);
+    [dartx.createHtmlDocument](...args) {
+      return this.createHTMLDocument.apply(this, args);
     }
-    [dartx.hasFeature]() {
-      return this.hasFeature();
+    [dartx.hasFeature](...args) {
+      return this.hasFeature.apply(this, args);
     }
   };
   dart.setSignature(html$.DomImplementation, {
@@ -55113,8 +55113,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.next](value) {
-      return this.next(value);
+    [dartx.next](...args) {
+      return this.next.apply(this, args);
     }
   };
   dart.setSignature(html$.DomIterator, {
@@ -55231,26 +55231,26 @@
     get [dartx.m44]() {
       return this.m44;
     }
-    [dartx.multiply](other) {
-      return this.multiply(other);
+    [dartx.multiply](...args) {
+      return this.multiply.apply(this, args);
     }
-    [dartx.scale](scale, originX, originY) {
-      return this.scale(scale, originX, originY);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scale3d](scale, originX, originY, originZ) {
-      return this.scale3d(scale, originX, originY, originZ);
+    [dartx.scale3d](...args) {
+      return this.scale3d.apply(this, args);
     }
-    [dartx.scaleNonUniform](scaleX, scaleY, scaleZn, originX, originY, originZ) {
-      return this.scaleNonUniform(scaleX, scaleY, scaleZn, originX, originY, originZ);
+    [dartx.scaleNonUniform](...args) {
+      return this.scaleNonUniform.apply(this, args);
     }
-    [dartx.toFloat32Array]() {
-      return this.toFloat32Array();
+    [dartx.toFloat32Array](...args) {
+      return this.toFloat32Array.apply(this, args);
     }
-    [dartx.toFloat64Array]() {
-      return this.toFloat64Array();
+    [dartx.toFloat64Array](...args) {
+      return this.toFloat64Array.apply(this, args);
     }
-    [dartx.translate](tx, ty, tz) {
-      return this.translate(tx, ty, tz);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
   };
   dart.setSignature(html$.DomMatrixReadOnly, {
@@ -55496,23 +55496,23 @@
     set [dartx.m44](value) {
       this.m44 = value;
     }
-    [dartx.multiplySelf](other) {
-      return this.multiplySelf(other);
+    [dartx.multiplySelf](...args) {
+      return this.multiplySelf.apply(this, args);
     }
-    [dartx.preMultiplySelf](other) {
-      return this.preMultiplySelf(other);
+    [dartx.preMultiplySelf](...args) {
+      return this.preMultiplySelf.apply(this, args);
     }
-    [dartx.scale3dSelf](scale, originX, originY, originZ) {
-      return this.scale3dSelf(scale, originX, originY, originZ);
+    [dartx.scale3dSelf](...args) {
+      return this.scale3dSelf.apply(this, args);
     }
-    [dartx.scaleNonUniformSelf](scaleX, scaleY, scaleZ, originX, originY, originZ) {
-      return this.scaleNonUniformSelf(scaleX, scaleY, scaleZ, originX, originY, originZ);
+    [dartx.scaleNonUniformSelf](...args) {
+      return this.scaleNonUniformSelf.apply(this, args);
     }
-    [dartx.scaleSelf](scale, originX, originY) {
-      return this.scaleSelf(scale, originX, originY);
+    [dartx.scaleSelf](...args) {
+      return this.scaleSelf.apply(this, args);
     }
-    [dartx.translateSelf](tx, ty, tz) {
-      return this.translateSelf(tx, ty, tz);
+    [dartx.translateSelf](...args) {
+      return this.translateSelf.apply(this, args);
     }
   };
   dart.setSignature(html$.DomMatrix, {
@@ -55572,8 +55572,8 @@
     static _create_1() {
       return new DOMParser();
     }
-    [dartx.parseFromString](str, type) {
-      return this.parseFromString(str, type);
+    [dartx.parseFromString](...args) {
+      return this.parseFromString.apply(this, args);
     }
   };
   dart.setSignature(html$.DomParser, {
@@ -55892,20 +55892,20 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.add](tokens) {
-      return this.add(tokens);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.contains](token) {
-      return this.contains(token);
+    [dartx.contains](...args) {
+      return this.contains.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.remove](tokens) {
-      return this.remove(tokens);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
-    [dartx.toggle](token, force) {
-      return this.toggle(token, force);
+    [dartx.toggle](...args) {
+      return this.toggle.apply(this, args);
     }
   };
   dart.setSignature(html$.DomTokenList, {
@@ -56130,11 +56130,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.DomStringList[dart.implements] = () => [ListOfString()];
@@ -56858,11 +56858,11 @@
     set [dartx.width](value) {
       this.width = value;
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.EmbedElement, 'created');
@@ -56990,8 +56990,8 @@
     get [dartx.withCredentials]() {
       return this.withCredentials;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.EventSource.errorEvent.forTarget(this);
@@ -57106,8 +57106,8 @@
     static _create_2(type) {
       return new ExtendableEvent(type);
     }
-    [dartx.waitUntil](value) {
-      return this.waitUntil(value);
+    [dartx.waitUntil](...args) {
+      return this.waitUntil.apply(this, args);
     }
   };
   dart.setSignature(html$.ExtendableEvent, {
@@ -57187,8 +57187,8 @@
     get [dartx.request]() {
       return this.request;
     }
-    [dartx.respondWith](value) {
-      return this.respondWith(value);
+    [dartx.respondWith](...args) {
+      return this.respondWith.apply(this, args);
     }
   };
   dart.setSignature(html$.FetchEvent, {
@@ -57269,14 +57269,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.FieldSetElement, 'created');
@@ -57374,8 +57374,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_createWriter](successCallback, errorCallback) {
-      return this.createWriter(successCallback, errorCallback);
+    [_createWriter](...args) {
+      return this.createWriter.apply(this, args);
     }
     [dartx.createWriter]() {
       let completer = CompleterOfFileWriter().new();
@@ -57386,8 +57386,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_file](successCallback, errorCallback) {
-      return this.file(successCallback, errorCallback);
+    [_file](...args) {
+      return this.file.apply(this, args);
     }
     [dartx.file]() {
       let completer = CompleterOfFile().new();
@@ -57504,8 +57504,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.FileList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfFile()];
@@ -57564,17 +57564,17 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.readAsArrayBuffer](blob) {
-      return this.readAsArrayBuffer(blob);
+    [dartx.readAsArrayBuffer](...args) {
+      return this.readAsArrayBuffer.apply(this, args);
     }
-    [dartx.readAsDataUrl](blob) {
-      return this.readAsDataURL(blob);
+    [dartx.readAsDataUrl](...args) {
+      return this.readAsDataURL.apply(this, args);
     }
-    [dartx.readAsText](blob, label) {
-      return this.readAsText(blob, label);
+    [dartx.readAsText](...args) {
+      return this.readAsText.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.FileReader.abortEvent.forTarget(this);
@@ -57733,17 +57733,17 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.seek](position) {
-      return this.seek(position);
+    [dartx.seek](...args) {
+      return this.seek.apply(this, args);
     }
-    [dartx.truncate](size) {
-      return this.truncate(size);
+    [dartx.truncate](...args) {
+      return this.truncate.apply(this, args);
     }
-    [dartx.write](data) {
-      return this.write(data);
+    [dartx.write](...args) {
+      return this.write.apply(this, args);
     }
     get [dartx.onAbort]() {
       return html$.FileWriter.abortEvent.forTarget(this);
@@ -57944,8 +57944,8 @@
     set [dartx.weight](value) {
       this.weight = value;
     }
-    [dartx.load]() {
-      return this.load();
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
   };
   dart.setSignature(html$.FontFace, {
@@ -57992,23 +57992,23 @@
     get [dartx.status]() {
       return this.status;
     }
-    [dartx.add](fontFace) {
-      return this.add(fontFace);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.check](font, text) {
-      return this.check(font, text);
+    [dartx.check](...args) {
+      return this.check.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.delete](fontFace) {
-      return this.delete(fontFace);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.forEach](callback, thisArg) {
-      return this.forEach(callback, thisArg);
+    [dartx.forEach](...args) {
+      return this.forEach.apply(this, args);
     }
-    [dartx.has](fontFace) {
-      return this.has(fontFace);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
   };
   dart.setSignature(html$.FontFaceSet, {
@@ -58073,26 +58073,26 @@
     static get supported() {
       return !!window.FormData;
     }
-    [dartx.append](name, value) {
-      return this.append(name, value);
+    [dartx.append](...args) {
+      return this.append.apply(this, args);
     }
-    [dartx.appendBlob](name, value, filename) {
-      return this.append(name, value, filename);
+    [dartx.appendBlob](...args) {
+      return this.append.apply(this, args);
     }
-    [dartx.delete](name) {
-      return this.delete(name);
+    [dartx.delete](...args) {
+      return this.delete.apply(this, args);
     }
-    [dartx.get](name) {
-      return this.get(name);
+    [dartx.get](...args) {
+      return this.get.apply(this, args);
     }
-    [dartx.getAll](name) {
-      return this.getAll(name);
+    [dartx.getAll](...args) {
+      return this.getAll.apply(this, args);
     }
-    [dartx.has](name) {
-      return this.has(name);
+    [dartx.has](...args) {
+      return this.has.apply(this, args);
     }
-    [dartx.set](name, value, filename) {
-      return this.set(name, value, filename);
+    [dartx.set](...args) {
+      return this.set.apply(this, args);
     }
   };
   dart.setSignature(html$.FormData, {
@@ -58213,31 +58213,31 @@
     set [dartx.target](value) {
       this.target = value;
     }
-    [__getter__](name) {
-      return this.__getter__(name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
     [dartx.requestAutocomplete](details) {
       let details_1 = html_common.convertDartToNative_Dictionary(details);
       this[_requestAutocomplete_1](details_1);
       return;
     }
-    [_requestAutocomplete_1](details) {
-      return this.requestAutocomplete(details);
+    [_requestAutocomplete_1](...args) {
+      return this.requestAutocomplete.apply(this, args);
     }
-    [dartx.reset]() {
-      return this.reset();
+    [dartx.reset](...args) {
+      return this.reset.apply(this, args);
     }
-    [dartx.submit]() {
-      return this.submit();
+    [dartx.submit](...args) {
+      return this.submit.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.FormElement, 'created');
@@ -58390,14 +58390,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getRegisteredRegions]() {
-      return this.getRegisteredRegions();
+    [dartx.getRegisteredRegions](...args) {
+      return this.getRegisteredRegions.apply(this, args);
     }
-    [dartx.registerRegion](region) {
-      return this.registerRegion(region);
+    [dartx.registerRegion](...args) {
+      return this.registerRegion.apply(this, args);
     }
-    [dartx.unregisterRegion](regionId) {
-      return this.unregisterRegion(regionId);
+    [dartx.unregisterRegion](...args) {
+      return this.unregisterRegion.apply(this, args);
     }
   };
   dart.setSignature(html$.Geofencing, {
@@ -58517,8 +58517,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_clearWatch](watchID) {
-      return this.clearWatch(watchID);
+    [_clearWatch](...args) {
+      return this.clearWatch.apply(this, args);
     }
     [_getCurrentPosition](successCallback, errorCallback, options) {
       if (errorCallback === void 0) errorCallback = null;
@@ -58535,14 +58535,14 @@
       this[_getCurrentPosition_3](successCallback);
       return;
     }
-    [_getCurrentPosition_1](successCallback, errorCallback, options) {
-      return this.getCurrentPosition(successCallback, errorCallback, options);
+    [_getCurrentPosition_1](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
-    [_getCurrentPosition_2](successCallback, errorCallback) {
-      return this.getCurrentPosition(successCallback, errorCallback);
+    [_getCurrentPosition_2](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
-    [_getCurrentPosition_3](successCallback) {
-      return this.getCurrentPosition(successCallback);
+    [_getCurrentPosition_3](...args) {
+      return this.getCurrentPosition.apply(this, args);
     }
     [_watchPosition](successCallback, errorCallback, options) {
       if (errorCallback === void 0) errorCallback = null;
@@ -58556,14 +58556,14 @@
       }
       return this[_watchPosition_3](successCallback);
     }
-    [_watchPosition_1](successCallback, errorCallback, options) {
-      return this.watchPosition(successCallback, errorCallback, options);
+    [_watchPosition_1](...args) {
+      return this.watchPosition.apply(this, args);
     }
-    [_watchPosition_2](successCallback, errorCallback) {
-      return this.watchPosition(successCallback, errorCallback);
+    [_watchPosition_2](...args) {
+      return this.watchPosition.apply(this, args);
     }
-    [_watchPosition_3](successCallback) {
-      return this.watchPosition(successCallback);
+    [_watchPosition_3](...args) {
+      return this.watchPosition.apply(this, args);
     }
   };
   dart.setSignature(html$.Geolocation, {
@@ -59234,8 +59234,8 @@
     get [dartx.oldUrl]() {
       return this.oldURL;
     }
-    [_initHashChangeEvent](type, canBubble, cancelable, oldURL, newURL) {
-      return this.initHashChangeEvent(type, canBubble, cancelable, oldURL, newURL);
+    [_initHashChangeEvent](...args) {
+      return this.initHashChangeEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.HashChangeEvent, {
@@ -59402,14 +59402,14 @@
     get [_get_state]() {
       return this.state;
     }
-    [dartx.back]() {
-      return this.back();
+    [dartx.back](...args) {
+      return this.back.apply(this, args);
     }
-    [dartx.forward]() {
-      return this.forward();
+    [dartx.forward](...args) {
+      return this.forward.apply(this, args);
     }
-    [dartx.go](delta) {
-      return this.go(delta);
+    [dartx.go](...args) {
+      return this.go.apply(this, args);
     }
     [dartx.pushState](data, title, url, options) {
       if (options === void 0) options = null;
@@ -59423,11 +59423,11 @@
       this[_pushState_2](data_1, title, url);
       return;
     }
-    [_pushState_1](data, title, url, options) {
-      return this.pushState(data, title, url, options);
+    [_pushState_1](...args) {
+      return this.pushState.apply(this, args);
     }
-    [_pushState_2](data, title, url) {
-      return this.pushState(data, title, url);
+    [_pushState_2](...args) {
+      return this.pushState.apply(this, args);
     }
     [dartx.replaceState](data, title, url, options) {
       if (options === void 0) options = null;
@@ -59441,11 +59441,11 @@
       this[_replaceState_2](data_1, title, url);
       return;
     }
-    [_replaceState_1](data, title, url, options) {
-      return this.replaceState(data, title, url, options);
+    [_replaceState_1](...args) {
+      return this.replaceState.apply(this, args);
     }
-    [_replaceState_2](data, title, url) {
-      return this.replaceState(data, title, url);
+    [_replaceState_2](...args) {
+      return this.replaceState.apply(this, args);
     }
   };
   html$.History[dart.implements] = () => [html$.HistoryBase];
@@ -59510,11 +59510,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getEyeParameters](whichEye) {
-      return this.getEyeParameters(whichEye);
+    [dartx.getEyeParameters](...args) {
+      return this.getEyeParameters.apply(this, args);
     }
-    [dartx.setFieldOfView](leftFov, rightFov) {
-      return this.setFieldOfView(leftFov, rightFov);
+    [dartx.setFieldOfView](...args) {
+      return this.setFieldOfView.apply(this, args);
     }
   };
   dart.setSignature(html$.HmdvrDevice, {
@@ -59579,11 +59579,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   html$.HtmlCollection[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -59749,11 +59749,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   dart.setSignature(html$.HtmlFormControlsCollection, {
@@ -59785,8 +59785,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.HtmlOptionsCollection, {
@@ -60039,8 +60039,8 @@
       }
       return headers;
     }
-    [dartx.open](method, url, opts) {
-      return this.open(method, url, opts);
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -60096,23 +60096,23 @@
     set [dartx.withCredentials](value) {
       this.withCredentials = value;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.getAllResponseHeaders]() {
-      return this.getAllResponseHeaders();
+    [dartx.getAllResponseHeaders](...args) {
+      return this.getAllResponseHeaders.apply(this, args);
     }
-    [dartx.getResponseHeader](name) {
-      return this.getResponseHeader(name);
+    [dartx.getResponseHeader](...args) {
+      return this.getResponseHeader.apply(this, args);
     }
-    [dartx.overrideMimeType](mime) {
-      return this.overrideMimeType(mime);
+    [dartx.overrideMimeType](...args) {
+      return this.overrideMimeType.apply(this, args);
     }
-    [dartx.send](body_OR_data) {
-      return this.send(body_OR_data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.setRequestHeader](name, value) {
-      return this.setRequestHeader(name, value);
+    [dartx.setRequestHeader](...args) {
+      return this.setRequestHeader.apply(this, args);
     }
     get [dartx.onReadyStateChange]() {
       return html$.HttpRequest.readyStateChangeEvent.forTarget(this);
@@ -60514,8 +60514,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.inspect](objectId, hints) {
-      return this.inspect(objectId, hints);
+    [dartx.inspect](...args) {
+      return this.inspect.apply(this, args);
     }
   };
   dart.setSignature(html$.InjectedScriptHost, {
@@ -60978,29 +60978,29 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.select]() {
-      return this.select();
+    [dartx.select](...args) {
+      return this.select.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
-    [dartx.setRangeText](replacement, opts) {
-      return this.setRangeText(replacement, opts);
+    [dartx.setRangeText](...args) {
+      return this.setRangeText.apply(this, args);
     }
-    [dartx.setSelectionRange](start, end, direction) {
-      return this.setSelectionRange(start, end, direction);
+    [dartx.setSelectionRange](...args) {
+      return this.setSelectionRange.apply(this, args);
     }
-    [dartx.stepDown](n) {
-      return this.stepDown(n);
+    [dartx.stepDown](...args) {
+      return this.stepDown.apply(this, args);
     }
-    [dartx.stepUp](n) {
-      return this.stepUp(n);
+    [dartx.stepUp](...args) {
+      return this.stepUp.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.InputElement, 'created');
@@ -62295,8 +62295,8 @@
     get [dartx.shiftKey]() {
       return this.shiftKey;
     }
-    [dartx.getModifierState](keyArg) {
-      return this.getModifierState(keyArg);
+    [dartx.getModifierState](...args) {
+      return this.getModifierState.apply(this, args);
     }
   };
   dart.setSignature(html$.KeyboardEvent, {
@@ -62471,14 +62471,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.KeygenElement, 'created');
@@ -62803,14 +62803,14 @@
     set [dartx.search](value) {
       this.search = value;
     }
-    [dartx.assign](url) {
-      return this.assign(url);
+    [dartx.assign](...args) {
+      return this.assign.apply(this, args);
     }
-    [dartx.reload]() {
-      return this.reload();
+    [dartx.reload](...args) {
+      return this.reload.apply(this, args);
     }
-    [dartx.replace](url) {
-      return this.replace(url);
+    [dartx.replace](...args) {
+      return this.replace.apply(this, args);
     }
     get [dartx.origin]() {
       if ("origin" in this) {
@@ -62957,14 +62957,14 @@
     set [dartx.volume](value) {
       this.volume = value;
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.play]() {
-      return this.play();
+    [dartx.play](...args) {
+      return this.play.apply(this, args);
     }
-    [dartx.unpause]() {
-      return this.unpause();
+    [dartx.unpause](...args) {
+      return this.unpause.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaController, {
@@ -63036,15 +63036,15 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.enumerateDevices]() {
-      return this.enumerateDevices();
+    [dartx.enumerateDevices](...args) {
+      return this.enumerateDevices.apply(this, args);
     }
     [dartx.getUserMedia](options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_getUserMedia_1](options_1);
     }
-    [_getUserMedia_1](options) {
-      return this.getUserMedia(options);
+    [_getUserMedia_1](...args) {
+      return this.getUserMedia.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaDevices, {
@@ -63306,20 +63306,20 @@
     get [dartx.sessionId]() {
       return this.sessionId;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.generateRequest](initDataType, initData) {
-      return this.generateRequest(initDataType, initData);
+    [dartx.generateRequest](...args) {
+      return this.generateRequest.apply(this, args);
     }
-    [dartx.load](sessionId) {
-      return this.load(sessionId);
+    [dartx.load](...args) {
+      return this.load.apply(this, args);
     }
-    [dartx.remove]() {
-      return this.remove();
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
-    [_update$](response) {
-      return this.update(response);
+    [_update$](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeySession, {
@@ -63368,14 +63368,14 @@
     get [dartx.keySystem]() {
       return this.keySystem;
     }
-    [dartx.createMediaKeys]() {
-      return this.createMediaKeys();
+    [dartx.createMediaKeys](...args) {
+      return this.createMediaKeys.apply(this, args);
     }
     [dartx.getConfiguration]() {
       return html_common.convertNativeToDart_Dictionary(this[_getConfiguration_1]());
     }
-    [_getConfiguration_1]() {
-      return this.getConfiguration();
+    [_getConfiguration_1](...args) {
+      return this.getConfiguration.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeySystemAccess, {
@@ -63396,11 +63396,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_createSession](sessionType) {
-      return this.createSession(sessionType);
+    [_createSession](...args) {
+      return this.createSession.apply(this, args);
     }
-    [dartx.setServerCertificate](serverCertificate) {
-      return this.setServerCertificate(serverCertificate);
+    [dartx.setServerCertificate](...args) {
+      return this.setServerCertificate.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaKeys, {
@@ -63431,14 +63431,14 @@
     set [dartx.mediaText](value) {
       this.mediaText = value;
     }
-    [dartx.appendMedium](medium) {
-      return this.appendMedium(medium);
+    [dartx.appendMedium](...args) {
+      return this.appendMedium.apply(this, args);
     }
-    [dartx.deleteMedium](medium) {
-      return this.deleteMedium(medium);
+    [dartx.deleteMedium](...args) {
+      return this.deleteMedium.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaList, {
@@ -63471,11 +63471,11 @@
     get [dartx.media]() {
       return this.media;
     }
-    [dartx.addListener](listener) {
-      return this.addListener(listener);
+    [dartx.addListener](...args) {
+      return this.addListener.apply(this, args);
     }
-    [dartx.removeListener](listener) {
-      return this.removeListener(listener);
+    [dartx.removeListener](...args) {
+      return this.removeListener.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.MediaQueryList.changeEvent.forTarget(this);
@@ -63559,11 +63559,11 @@
     static _create_1() {
       return new MediaSession();
     }
-    [dartx.activate]() {
-      return this.activate();
+    [dartx.activate](...args) {
+      return this.activate.apply(this, args);
     }
-    [dartx.deactivate]() {
-      return this.deactivate();
+    [dartx.deactivate](...args) {
+      return this.deactivate.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaSession, {
@@ -63616,14 +63616,14 @@
     get [dartx.sourceBuffers]() {
       return this.sourceBuffers;
     }
-    [dartx.addSourceBuffer](type) {
-      return this.addSourceBuffer(type);
+    [dartx.addSourceBuffer](...args) {
+      return this.addSourceBuffer.apply(this, args);
     }
-    [dartx.endOfStream](error) {
-      return this.endOfStream(error);
+    [dartx.endOfStream](...args) {
+      return this.endOfStream.apply(this, args);
     }
-    [dartx.removeSourceBuffer](buffer) {
-      return this.removeSourceBuffer(buffer);
+    [dartx.removeSourceBuffer](...args) {
+      return this.removeSourceBuffer.apply(this, args);
     }
   };
   dart.setSignature(html$.MediaSource, {
@@ -63705,29 +63705,29 @@
     get [dartx.label]() {
       return this.label;
     }
-    [dartx.addTrack](track) {
-      return this.addTrack(track);
+    [dartx.addTrack](...args) {
+      return this.addTrack.apply(this, args);
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
-    [dartx.getAudioTracks]() {
-      return this.getAudioTracks();
+    [dartx.getAudioTracks](...args) {
+      return this.getAudioTracks.apply(this, args);
     }
-    [dartx.getTrackById](trackId) {
-      return this.getTrackById(trackId);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
-    [dartx.getTracks]() {
-      return this.getTracks();
+    [dartx.getTracks](...args) {
+      return this.getTracks.apply(this, args);
     }
-    [dartx.getVideoTracks]() {
-      return this.getVideoTracks();
+    [dartx.getVideoTracks](...args) {
+      return this.getVideoTracks.apply(this, args);
     }
-    [dartx.removeTrack](track) {
-      return this.removeTrack(track);
+    [dartx.removeTrack](...args) {
+      return this.removeTrack.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onAddTrack]() {
       return html$.MediaStream.addTrackEvent.forTarget(this);
@@ -63873,8 +63873,8 @@
     get [dartx.readyState]() {
       return this.readyState;
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
     static getSources() {
       let completer = CompleterOfListOfSourceInfo().new();
@@ -63883,8 +63883,8 @@
       }, ListOfSourceInfoTovoid()));
       return completer.future;
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onEnded]() {
       return html$.MediaStreamTrack.endedEvent.forTarget(this);
@@ -64195,8 +64195,8 @@
     get [_get_source]() {
       return this.source;
     }
-    [_initMessageEvent](typeArg, canBubbleArg, cancelableArg, dataArg, originArg, lastEventIdArg, sourceArg, portsArg) {
-      return this.initMessageEvent(typeArg, canBubbleArg, cancelableArg, dataArg, originArg, lastEventIdArg, sourceArg, portsArg);
+    [_initMessageEvent](...args) {
+      return this.initMessageEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.MessageEvent, {
@@ -64232,8 +64232,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -64246,14 +64246,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.start]() {
-      return this.start();
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.MessagePort.messageEvent.forTarget(this);
@@ -64547,11 +64547,11 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.open]() {
-      return this.open();
+    [dartx.open](...args) {
+      return this.open.apply(this, args);
     }
   };
   dart.setSignature(html$.MidiPort, {
@@ -64661,8 +64661,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.send](data, timestamp) {
-      return this.send(data, timestamp);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
   };
   dart.setSignature(html$.MidiOutput, {
@@ -64773,11 +64773,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   html$.MimeTypeArray[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfMimeType()];
@@ -64984,8 +64984,8 @@
       this[_initMouseEvent_1](type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget_1);
       return;
     }
-    [_initMouseEvent_1](type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget) {
-      return this.initMouseEvent(type, bubbles, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget);
+    [_initMouseEvent_1](...args) {
+      return this.initMouseEvent.apply(this, args);
     }
     get [dartx.client]() {
       return new (PointOfnum())(this[_clientX], this[_clientY]);
@@ -65078,19 +65078,19 @@
     'observe'
   ]);
   html$.MutationObserver = class MutationObserver extends _interceptors.Interceptor {
-    [dartx.disconnect]() {
-      return this.disconnect();
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
     [_observe](target, options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       this[_observe_1](target, options_1);
       return;
     }
-    [_observe_1](target, options) {
-      return this.observe(target, options);
+    [_observe_1](...args) {
+      return this.observe.apply(this, args);
     }
-    [dartx.takeRecords]() {
-      return this.takeRecords();
+    [dartx.takeRecords](...args) {
+      return this.takeRecords.apply(this, args);
     }
     static get supported() {
       return !!(window.MutationObserver || window.WebKitMutationObserver);
@@ -65128,8 +65128,8 @@
     static _fixupList(list) {
       return list;
     }
-    [_call](target, options) {
-      return this.observe(target, options);
+    [_call](...args) {
+      return this.observe.apply(this, args);
     }
     static new(callback) {
       0;
@@ -65283,8 +65283,8 @@
         this.getUserMedia = this.getUserMedia || this.webkitGetUserMedia || this.mozGetUserMedia || this.msGetUserMedia;
       }
     }
-    [_getUserMedia](options, success, error) {
-      return this.getUserMedia(options, success, error);
+    [_getUserMedia](...args) {
+      return this.getUserMedia.apply(this, args);
     }
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
@@ -65343,17 +65343,17 @@
     get [dartx.temporaryStorage]() {
       return this.webkitTemporaryStorage;
     }
-    [dartx.getBattery]() {
-      return this.getBattery();
+    [dartx.getBattery](...args) {
+      return this.getBattery.apply(this, args);
     }
-    [dartx.getGamepads]() {
-      return this.getGamepads();
+    [dartx.getGamepads](...args) {
+      return this.getGamepads.apply(this, args);
     }
-    [dartx.getVRDevices]() {
-      return this.getVRDevices();
+    [dartx.getVRDevices](...args) {
+      return this.getVRDevices.apply(this, args);
     }
-    [dartx.registerProtocolHandler](scheme, url, title) {
-      return this.registerProtocolHandler(scheme, url, title);
+    [dartx.registerProtocolHandler](...args) {
+      return this.registerProtocolHandler.apply(this, args);
     }
     [dartx.requestMidiAccess](options) {
       if (options === void 0) options = null;
@@ -65363,17 +65363,17 @@
       }
       return this[_requestMidiAccess_2]();
     }
-    [_requestMidiAccess_1](options) {
-      return this.requestMIDIAccess(options);
+    [_requestMidiAccess_1](...args) {
+      return this.requestMIDIAccess.apply(this, args);
     }
-    [_requestMidiAccess_2]() {
-      return this.requestMIDIAccess();
+    [_requestMidiAccess_2](...args) {
+      return this.requestMIDIAccess.apply(this, args);
     }
-    [dartx.requestMediaKeySystemAccess](keySystem, supportedConfigurations) {
-      return this.requestMediaKeySystemAccess(keySystem, supportedConfigurations);
+    [dartx.requestMediaKeySystemAccess](...args) {
+      return this.requestMediaKeySystemAccess.apply(this, args);
     }
-    [dartx.sendBeacon](url, data) {
-      return this.sendBeacon(url, data);
+    [dartx.sendBeacon](...args) {
+      return this.sendBeacon.apply(this, args);
     }
     get [dartx.hardwareConcurrency]() {
       return this.hardwareConcurrency;
@@ -65408,8 +65408,8 @@
     get [dartx.cookieEnabled]() {
       return this.cookieEnabled;
     }
-    [dartx.getStorageUpdates]() {
-      return this.getStorageUpdates();
+    [dartx.getStorageUpdates](...args) {
+      return this.getStorageUpdates.apply(this, args);
     }
   };
   html$.Navigator[dart.implements] = () => [html$.NavigatorStorageUtils, html$.NavigatorCpu, html$.NavigatorLanguage, html$.NavigatorOnLine, html$.NavigatorID];
@@ -65630,8 +65630,8 @@
     get [dartx.cookieEnabled]() {
       return this.cookieEnabled;
     }
-    [dartx.getStorageUpdates]() {
-      return this.getStorageUpdates();
+    [dartx.getStorageUpdates](...args) {
+      return this.getStorageUpdates.apply(this, args);
     }
   };
   dart.setSignature(html$.NavigatorStorageUtils, {
@@ -65938,14 +65938,14 @@
     get [dartx.whatToShow]() {
       return this.whatToShow;
     }
-    [dartx.detach]() {
-      return this.detach();
+    [dartx.detach](...args) {
+      return this.detach.apply(this, args);
     }
-    [dartx.nextNode]() {
-      return this.nextNode();
+    [dartx.nextNode](...args) {
+      return this.nextNode.apply(this, args);
     }
-    [dartx.previousNode]() {
-      return this.previousNode();
+    [dartx.previousNode](...args) {
+      return this.previousNode.apply(this, args);
     }
   };
   dart.setSignature(html$.NodeIterator, {
@@ -66018,8 +66018,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.NodeList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -66071,8 +66071,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
   };
   dart.setSignature(html$.NonElementParentNode, {
@@ -66162,8 +66162,8 @@
     get [dartx.vibrate]() {
       return this.vibrate;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     static requestPermission() {
       let completer = CompleterOfString().new();
@@ -66416,20 +66416,20 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ObjectElement, 'created');
@@ -66703,14 +66703,14 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.OutputElement, 'created');
@@ -66944,35 +66944,35 @@
     static _create_3(path_OR_text) {
       return new Path2D(path_OR_text);
     }
-    [dartx.addPath](path, transform) {
-      return this.addPath(path, transform);
+    [dartx.addPath](...args) {
+      return this.addPath.apply(this, args);
     }
-    [dartx.arc](x, y, radius, startAngle, endAngle, anticlockwise) {
-      return this.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+    [dartx.arc](...args) {
+      return this.arc.apply(this, args);
     }
-    [dartx.arcTo](x1, y1, x2, y2, radius) {
-      return this.arcTo(x1, y1, x2, y2, radius);
+    [dartx.arcTo](...args) {
+      return this.arcTo.apply(this, args);
     }
-    [dartx.bezierCurveTo](cp1x, cp1y, cp2x, cp2y, x, y) {
-      return this.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);
+    [dartx.bezierCurveTo](...args) {
+      return this.bezierCurveTo.apply(this, args);
     }
-    [dartx.closePath]() {
-      return this.closePath();
+    [dartx.closePath](...args) {
+      return this.closePath.apply(this, args);
     }
-    [dartx.ellipse](x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
-      return this.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise);
+    [dartx.ellipse](...args) {
+      return this.ellipse.apply(this, args);
     }
-    [dartx.lineTo](x, y) {
-      return this.lineTo(x, y);
+    [dartx.lineTo](...args) {
+      return this.lineTo.apply(this, args);
     }
-    [dartx.moveTo](x, y) {
-      return this.moveTo(x, y);
+    [dartx.moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.quadraticCurveTo](cpx, cpy, x, y) {
-      return this.quadraticCurveTo(cpx, cpy, x, y);
+    [dartx.quadraticCurveTo](...args) {
+      return this.quadraticCurveTo.apply(this, args);
     }
-    [dartx.rect](x, y, width, height) {
-      return this.rect(x, y, width, height);
+    [dartx.rect](...args) {
+      return this.rect.apply(this, args);
     }
   };
   html$.Path2D[dart.implements] = () => [html$._CanvasPathMethods];
@@ -67035,41 +67035,41 @@
     get [dartx.timing]() {
       return this.timing;
     }
-    [dartx.clearFrameTimings]() {
-      return this.clearFrameTimings();
+    [dartx.clearFrameTimings](...args) {
+      return this.clearFrameTimings.apply(this, args);
     }
-    [dartx.clearMarks](markName) {
-      return this.clearMarks(markName);
+    [dartx.clearMarks](...args) {
+      return this.clearMarks.apply(this, args);
     }
-    [dartx.clearMeasures](measureName) {
-      return this.clearMeasures(measureName);
+    [dartx.clearMeasures](...args) {
+      return this.clearMeasures.apply(this, args);
     }
-    [dartx.getEntries]() {
-      return this.getEntries();
+    [dartx.getEntries](...args) {
+      return this.getEntries.apply(this, args);
     }
-    [dartx.getEntriesByName](name, entryType) {
-      return this.getEntriesByName(name, entryType);
+    [dartx.getEntriesByName](...args) {
+      return this.getEntriesByName.apply(this, args);
     }
-    [dartx.getEntriesByType](entryType) {
-      return this.getEntriesByType(entryType);
+    [dartx.getEntriesByType](...args) {
+      return this.getEntriesByType.apply(this, args);
     }
-    [dartx.mark](markName) {
-      return this.mark(markName);
+    [dartx.mark](...args) {
+      return this.mark.apply(this, args);
     }
-    [dartx.measure](measureName, startMark, endMark) {
-      return this.measure(measureName, startMark, endMark);
+    [dartx.measure](...args) {
+      return this.measure.apply(this, args);
     }
-    [dartx.now]() {
-      return this.now();
+    [dartx.now](...args) {
+      return this.now.apply(this, args);
     }
-    [dartx.setFrameTimingBufferSize](maxSize) {
-      return this.setFrameTimingBufferSize(maxSize);
+    [dartx.setFrameTimingBufferSize](...args) {
+      return this.setFrameTimingBufferSize.apply(this, args);
     }
-    [dartx.clearResourceTimings]() {
-      return this.webkitClearResourceTimings();
+    [dartx.clearResourceTimings](...args) {
+      return this.webkitClearResourceTimings.apply(this, args);
     }
-    [dartx.setResourceTimingBufferSize](maxSize) {
-      return this.webkitSetResourceTimingBufferSize(maxSize);
+    [dartx.setResourceTimingBufferSize](...args) {
+      return this.webkitSetResourceTimingBufferSize.apply(this, args);
     }
     get [dartx.onResourceTimingBufferFull]() {
       return html$.Performance.resourceTimingBufferFullEvent.forTarget(this);
@@ -67462,14 +67462,14 @@
     get [dartx.minPossiblePeriod]() {
       return this.minPossiblePeriod;
     }
-    [dartx.getRegistration](tag) {
-      return this.getRegistration(tag);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
-    [dartx.permissionState]() {
-      return this.permissionState();
+    [dartx.permissionState](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.register](options) {
       if (options === void 0) options = null;
@@ -67479,11 +67479,11 @@
       }
       return this[_register_2]();
     }
-    [_register_1](options) {
-      return this.register(options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2]() {
-      return this.register();
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
   };
   dart.setSignature(html$.PeriodicSyncManager, {
@@ -67522,8 +67522,8 @@
     get [dartx.tag]() {
       return this.tag;
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
   };
   dart.setSignature(html$.PeriodicSyncRegistration, {
@@ -67578,8 +67578,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.query](permission) {
-      return this.query(permission);
+    [dartx.query](...args) {
+      return this.query.apply(this, args);
     }
   };
   dart.setSignature(html$.Permissions, {
@@ -67627,11 +67627,11 @@
     get [dartx.name]() {
       return this.name;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
   };
   dart.setSignature(html$.Plugin, {
@@ -67703,14 +67703,14 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.refresh](reload) {
-      return this.refresh(reload);
+    [dartx.refresh](...args) {
+      return this.refresh.apply(this, args);
     }
   };
   html$.PluginArray[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfPlugin()];
@@ -67759,8 +67759,8 @@
     set [dartx.message](value) {
       this.message = value;
     }
-    [dartx.createdCallback]() {
-      return this.createdCallback();
+    [dartx.createdCallback](...args) {
+      return this.createdCallback.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.PluginPlaceholderElement, 'created');
@@ -67935,14 +67935,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getImmediateState]() {
-      return this.getImmediateState();
+    [dartx.getImmediateState](...args) {
+      return this.getImmediateState.apply(this, args);
     }
-    [dartx.getState]() {
-      return this.getState();
+    [dartx.getState](...args) {
+      return this.getState.apply(this, args);
     }
-    [dartx.resetSensor]() {
-      return this.resetSensor();
+    [dartx.resetSensor](...args) {
+      return this.resetSensor.apply(this, args);
     }
   };
   dart.setSignature(html$.PositionSensorVRDevice, {
@@ -67987,14 +67987,14 @@
     get [dartx.session]() {
       return this.session;
     }
-    [dartx.getAvailability](url) {
-      return this.getAvailability(url);
+    [dartx.getAvailability](...args) {
+      return this.getAvailability.apply(this, args);
     }
-    [dartx.joinSession](url, presentationId) {
-      return this.joinSession(url, presentationId);
+    [dartx.joinSession](...args) {
+      return this.joinSession.apply(this, args);
     }
-    [dartx.startSession](url) {
-      return this.startSession(url);
+    [dartx.startSession](...args) {
+      return this.startSession.apply(this, args);
     }
   };
   dart.setSignature(html$.Presentation, {
@@ -68058,11 +68058,11 @@
     get [dartx.state]() {
       return this.state;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data_OR_message) {
-      return this.send(data_OR_message);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.PresentationSession.messageEvent.forTarget(this);
@@ -68315,8 +68315,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getSubscription]() {
-      return this.getSubscription();
+    [dartx.getSubscription](...args) {
+      return this.getSubscription.apply(this, args);
     }
     [dartx.permissionState](options) {
       if (options === void 0) options = null;
@@ -68326,11 +68326,11 @@
       }
       return this[_permissionState_2]();
     }
-    [_permissionState_1](options) {
-      return this.permissionState(options);
+    [_permissionState_1](...args) {
+      return this.permissionState.apply(this, args);
     }
-    [_permissionState_2]() {
-      return this.permissionState();
+    [_permissionState_2](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.subscribe](options) {
       if (options === void 0) options = null;
@@ -68340,11 +68340,11 @@
       }
       return this[_subscribe_2]();
     }
-    [_subscribe_1](options) {
-      return this.subscribe(options);
+    [_subscribe_1](...args) {
+      return this.subscribe.apply(this, args);
     }
-    [_subscribe_2]() {
-      return this.subscribe();
+    [_subscribe_2](...args) {
+      return this.subscribe.apply(this, args);
     }
   };
   dart.setSignature(html$.PushManager, {
@@ -68376,17 +68376,17 @@
     static _create_1(message) {
       return new PushMessageData(message);
     }
-    [dartx.arrayBuffer]() {
-      return this.arrayBuffer();
+    [dartx.arrayBuffer](...args) {
+      return this.arrayBuffer.apply(this, args);
     }
-    [dartx.blob]() {
-      return this.blob();
+    [dartx.blob](...args) {
+      return this.blob.apply(this, args);
     }
-    [dartx.json]() {
-      return this.json();
+    [dartx.json](...args) {
+      return this.json.apply(this, args);
     }
-    [dartx.text]() {
-      return this.text();
+    [dartx.text](...args) {
+      return this.text.apply(this, args);
     }
   };
   dart.setSignature(html$.PushMessageData, {
@@ -68415,8 +68415,8 @@
     get [dartx.endpoint]() {
       return this.endpoint;
     }
-    [dartx.unsubscribe]() {
-      return this.unsubscribe();
+    [dartx.unsubscribe](...args) {
+      return this.unsubscribe.apply(this, args);
     }
   };
   dart.setSignature(html$.PushSubscription, {
@@ -68518,74 +68518,74 @@
     get [dartx.startOffset]() {
       return this.startOffset;
     }
-    [dartx.cloneContents]() {
-      return this.cloneContents();
+    [dartx.cloneContents](...args) {
+      return this.cloneContents.apply(this, args);
     }
-    [dartx.cloneRange]() {
-      return this.cloneRange();
+    [dartx.cloneRange](...args) {
+      return this.cloneRange.apply(this, args);
     }
-    [dartx.collapse](toStart) {
-      return this.collapse(toStart);
+    [dartx.collapse](...args) {
+      return this.collapse.apply(this, args);
     }
-    [dartx.compareBoundaryPoints](how, sourceRange) {
-      return this.compareBoundaryPoints(how, sourceRange);
+    [dartx.compareBoundaryPoints](...args) {
+      return this.compareBoundaryPoints.apply(this, args);
     }
-    [dartx.comparePoint](node, offset) {
-      return this.comparePoint(node, offset);
+    [dartx.comparePoint](...args) {
+      return this.comparePoint.apply(this, args);
     }
-    [dartx.createContextualFragment](fragment) {
-      return this.createContextualFragment(fragment);
+    [dartx.createContextualFragment](...args) {
+      return this.createContextualFragment.apply(this, args);
     }
-    [dartx.deleteContents]() {
-      return this.deleteContents();
+    [dartx.deleteContents](...args) {
+      return this.deleteContents.apply(this, args);
     }
-    [dartx.detach]() {
-      return this.detach();
+    [dartx.detach](...args) {
+      return this.detach.apply(this, args);
     }
-    [dartx.expand](unit) {
-      return this.expand(unit);
+    [dartx.expand](...args) {
+      return this.expand.apply(this, args);
     }
-    [dartx.extractContents]() {
-      return this.extractContents();
+    [dartx.extractContents](...args) {
+      return this.extractContents.apply(this, args);
     }
-    [dartx.getBoundingClientRect]() {
-      return this.getBoundingClientRect();
+    [dartx.getBoundingClientRect](...args) {
+      return this.getBoundingClientRect.apply(this, args);
     }
-    [dartx.getClientRects]() {
-      return this.getClientRects();
+    [dartx.getClientRects](...args) {
+      return this.getClientRects.apply(this, args);
     }
-    [dartx.insertNode](node) {
-      return this.insertNode(node);
+    [dartx.insertNode](...args) {
+      return this.insertNode.apply(this, args);
     }
-    [dartx.isPointInRange](node, offset) {
-      return this.isPointInRange(node, offset);
+    [dartx.isPointInRange](...args) {
+      return this.isPointInRange.apply(this, args);
     }
-    [dartx.selectNode](node) {
-      return this.selectNode(node);
+    [dartx.selectNode](...args) {
+      return this.selectNode.apply(this, args);
     }
-    [dartx.selectNodeContents](node) {
-      return this.selectNodeContents(node);
+    [dartx.selectNodeContents](...args) {
+      return this.selectNodeContents.apply(this, args);
     }
-    [dartx.setEnd](node, offset) {
-      return this.setEnd(node, offset);
+    [dartx.setEnd](...args) {
+      return this.setEnd.apply(this, args);
     }
-    [dartx.setEndAfter](node) {
-      return this.setEndAfter(node);
+    [dartx.setEndAfter](...args) {
+      return this.setEndAfter.apply(this, args);
     }
-    [dartx.setEndBefore](node) {
-      return this.setEndBefore(node);
+    [dartx.setEndBefore](...args) {
+      return this.setEndBefore.apply(this, args);
     }
-    [dartx.setStart](node, offset) {
-      return this.setStart(node, offset);
+    [dartx.setStart](...args) {
+      return this.setStart.apply(this, args);
     }
-    [dartx.setStartAfter](node) {
-      return this.setStartAfter(node);
+    [dartx.setStartAfter](...args) {
+      return this.setStartAfter.apply(this, args);
     }
-    [dartx.setStartBefore](node) {
-      return this.setStartBefore(node);
+    [dartx.setStartBefore](...args) {
+      return this.setStartBefore.apply(this, args);
     }
-    [dartx.surroundContents](newParent) {
-      return this.surroundContents(newParent);
+    [dartx.surroundContents](...args) {
+      return this.surroundContents.apply(this, args);
     }
     static get supportsCreateContextualFragment() {
       return "createContextualFragment" in window.Range.prototype;
@@ -68651,11 +68651,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getReader]() {
-      return this.getReader();
+    [dartx.getReader](...args) {
+      return this.getReader.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableByteStream, {
@@ -68679,14 +68679,14 @@
     get [dartx.closed]() {
       return this.closed;
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.read]() {
-      return this.read();
+    [dartx.read](...args) {
+      return this.read.apply(this, args);
     }
-    [dartx.releaseLock]() {
-      return this.releaseLock();
+    [dartx.releaseLock](...args) {
+      return this.releaseLock.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableByteStreamReader, {
@@ -68707,11 +68707,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getReader]() {
-      return this.getReader();
+    [dartx.getReader](...args) {
+      return this.getReader.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableStream, {
@@ -68735,14 +68735,14 @@
     get [dartx.closed]() {
       return this.closed;
     }
-    [dartx.cancel](reason) {
-      return this.cancel(reason);
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.read]() {
-      return this.read();
+    [dartx.read](...args) {
+      return this.read.apply(this, args);
     }
-    [dartx.releaseLock]() {
-      return this.releaseLock();
+    [dartx.releaseLock](...args) {
+      return this.releaseLock.apply(this, args);
     }
   };
   dart.setSignature(html$.ReadableStreamReader, {
@@ -68877,23 +68877,23 @@
     get [dartx.reliable]() {
       return this.reliable;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data) {
-      return this.send(data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendBlob](data) {
-      return this.send(data);
+    [dartx.sendBlob](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendByteBuffer](data) {
-      return this.send(data);
+    [dartx.sendByteBuffer](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendString](data) {
-      return this.send(data);
+    [dartx.sendString](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendTypedData](data) {
-      return this.send(data);
+    [dartx.sendTypedData](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onClose]() {
       return html$.RtcDataChannel.closeEvent.forTarget(this);
@@ -69004,8 +69004,8 @@
     get [dartx.track]() {
       return this.track;
     }
-    [dartx.insertDtmf](tones, duration, interToneGap) {
-      return this.insertDTMF(tones, duration, interToneGap);
+    [dartx.insertDtmf](...args) {
+      return this.insertDTMF.apply(this, args);
     }
     get [dartx.onToneChange]() {
       return html$.RtcDtmfSender.toneChangeEvent.forTarget(this);
@@ -69230,8 +69230,8 @@
     get [dartx.signalingState]() {
       return this.signalingState;
     }
-    [dartx.addIceCandidate](candidate, successCallback, failureCallback) {
-      return this.addIceCandidate(candidate, successCallback, failureCallback);
+    [dartx.addIceCandidate](...args) {
+      return this.addIceCandidate.apply(this, args);
     }
     [dartx.addStream](stream, mediaConstraints) {
       if (mediaConstraints === void 0) mediaConstraints = null;
@@ -69243,14 +69243,14 @@
       this[_addStream_2](stream);
       return;
     }
-    [_addStream_1](stream, mediaConstraints) {
-      return this.addStream(stream, mediaConstraints);
+    [_addStream_1](...args) {
+      return this.addStream.apply(this, args);
     }
-    [_addStream_2](stream) {
-      return this.addStream(stream);
+    [_addStream_2](...args) {
+      return this.addStream.apply(this, args);
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [_createAnswer](successCallback, failureCallback, mediaConstraints) {
       if (failureCallback === void 0) failureCallback = null;
@@ -69263,14 +69263,14 @@
       this[_createAnswer_2](successCallback, failureCallback);
       return;
     }
-    [_createAnswer_1](successCallback, failureCallback, mediaConstraints) {
-      return this.createAnswer(successCallback, failureCallback, mediaConstraints);
+    [_createAnswer_1](...args) {
+      return this.createAnswer.apply(this, args);
     }
-    [_createAnswer_2](successCallback, failureCallback) {
-      return this.createAnswer(successCallback, failureCallback);
+    [_createAnswer_2](...args) {
+      return this.createAnswer.apply(this, args);
     }
-    [dartx.createDtmfSender](track) {
-      return this.createDTMFSender(track);
+    [dartx.createDtmfSender](...args) {
+      return this.createDTMFSender.apply(this, args);
     }
     [dartx.createDataChannel](label, options) {
       if (options === void 0) options = null;
@@ -69280,11 +69280,11 @@
       }
       return this[_createDataChannel_2](label);
     }
-    [_createDataChannel_1](label, options) {
-      return this.createDataChannel(label, options);
+    [_createDataChannel_1](...args) {
+      return this.createDataChannel.apply(this, args);
     }
-    [_createDataChannel_2](label) {
-      return this.createDataChannel(label);
+    [_createDataChannel_2](...args) {
+      return this.createDataChannel.apply(this, args);
     }
     [_createOffer](successCallback, failureCallback, rtcOfferOptions) {
       if (failureCallback === void 0) failureCallback = null;
@@ -69297,29 +69297,29 @@
       this[_createOffer_2](successCallback, failureCallback);
       return;
     }
-    [_createOffer_1](successCallback, failureCallback, rtcOfferOptions) {
-      return this.createOffer(successCallback, failureCallback, rtcOfferOptions);
+    [_createOffer_1](...args) {
+      return this.createOffer.apply(this, args);
     }
-    [_createOffer_2](successCallback, failureCallback) {
-      return this.createOffer(successCallback, failureCallback);
+    [_createOffer_2](...args) {
+      return this.createOffer.apply(this, args);
     }
-    [dartx.getLocalStreams]() {
-      return this.getLocalStreams();
+    [dartx.getLocalStreams](...args) {
+      return this.getLocalStreams.apply(this, args);
     }
-    [dartx.getRemoteStreams]() {
-      return this.getRemoteStreams();
+    [dartx.getRemoteStreams](...args) {
+      return this.getRemoteStreams.apply(this, args);
     }
-    [_getStats](successCallback, selector) {
-      return this.getStats(successCallback, selector);
+    [_getStats](...args) {
+      return this.getStats.apply(this, args);
     }
-    [dartx.getStreamById](streamId) {
-      return this.getStreamById(streamId);
+    [dartx.getStreamById](...args) {
+      return this.getStreamById.apply(this, args);
     }
-    [dartx.removeStream](stream) {
-      return this.removeStream(stream);
+    [dartx.removeStream](...args) {
+      return this.removeStream.apply(this, args);
     }
-    [_setLocalDescription](description, successCallback, failureCallback) {
-      return this.setLocalDescription(description, successCallback, failureCallback);
+    [_setLocalDescription](...args) {
+      return this.setLocalDescription.apply(this, args);
     }
     [dartx.setLocalDescription](description) {
       let completer = async.Completer.new();
@@ -69330,8 +69330,8 @@
       }, StringTovoid$()));
       return completer.future;
     }
-    [_setRemoteDescription](description, successCallback, failureCallback) {
-      return this.setRemoteDescription(description, successCallback, failureCallback);
+    [_setRemoteDescription](...args) {
+      return this.setRemoteDescription.apply(this, args);
     }
     [dartx.setRemoteDescription](description) {
       let completer = async.Completer.new();
@@ -69359,14 +69359,14 @@
       this[_updateIce_3]();
       return;
     }
-    [_updateIce_1](configuration, mediaConstraints) {
-      return this.updateIce(configuration, mediaConstraints);
+    [_updateIce_1](...args) {
+      return this.updateIce.apply(this, args);
     }
-    [_updateIce_2](configuration) {
-      return this.updateIce(configuration);
+    [_updateIce_2](...args) {
+      return this.updateIce.apply(this, args);
     }
-    [_updateIce_3]() {
-      return this.updateIce();
+    [_updateIce_3](...args) {
+      return this.updateIce.apply(this, args);
     }
     get [dartx.onAddStream]() {
       return html$.RtcPeerConnection.addStreamEvent.forTarget(this);
@@ -69541,11 +69541,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.names]() {
-      return this.names();
+    [dartx.names](...args) {
+      return this.names.apply(this, args);
     }
-    [dartx.stat](name) {
-      return this.stat(name);
+    [dartx.stat](...args) {
+      return this.stat.apply(this, args);
     }
   };
   dart.setSignature(html$.RtcStatsReport, {
@@ -69570,11 +69570,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.result]() {
-      return this.result();
+    [dartx.result](...args) {
+      return this.result.apply(this, args);
     }
   };
   dart.setSignature(html$.RtcStatsResponse, {
@@ -69665,11 +69665,11 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.lock](orientation) {
-      return this.lock(orientation);
+    [dartx.lock](...args) {
+      return this.lock.apply(this, args);
     }
-    [dartx.unlock]() {
-      return this.unlock();
+    [dartx.unlock](...args) {
+      return this.unlock.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.ScreenOrientation.changeEvent.forTarget(this);
@@ -69899,8 +69899,8 @@
     get [dartx.velocityY]() {
       return this.velocityY;
     }
-    [dartx.consumeDelta](x, y) {
-      return this.consumeDelta(x, y);
+    [dartx.consumeDelta](...args) {
+      return this.consumeDelta.apply(this, args);
     }
   };
   dart.setSignature(html$.ScrollState, {
@@ -70142,26 +70142,26 @@
     get [dartx.willValidate]() {
       return this.willValidate;
     }
-    [__setter__](index, option) {
-      return this.__setter__(index, option);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.add](element, before) {
-      return this.add(element, before);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.namedItem](name) {
-      return this.namedItem(name);
+    [dartx.namedItem](...args) {
+      return this.namedItem.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
     get [dartx.options]() {
       let options = ListOfOptionElement().from(this[dartx.querySelectorAll](html$.Element)('option'));
@@ -70279,47 +70279,47 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.addRange](range) {
-      return this.addRange(range);
+    [dartx.addRange](...args) {
+      return this.addRange.apply(this, args);
     }
-    [dartx.collapse](node, offset) {
-      return this.collapse(node, offset);
+    [dartx.collapse](...args) {
+      return this.collapse.apply(this, args);
     }
-    [dartx.collapseToEnd]() {
-      return this.collapseToEnd();
+    [dartx.collapseToEnd](...args) {
+      return this.collapseToEnd.apply(this, args);
     }
-    [dartx.collapseToStart]() {
-      return this.collapseToStart();
+    [dartx.collapseToStart](...args) {
+      return this.collapseToStart.apply(this, args);
     }
-    [dartx.containsNode](node, allowPartialContainment) {
-      return this.containsNode(node, allowPartialContainment);
+    [dartx.containsNode](...args) {
+      return this.containsNode.apply(this, args);
     }
-    [dartx.deleteFromDocument]() {
-      return this.deleteFromDocument();
+    [dartx.deleteFromDocument](...args) {
+      return this.deleteFromDocument.apply(this, args);
     }
-    [dartx.empty]() {
-      return this.empty();
+    [dartx.empty](...args) {
+      return this.empty.apply(this, args);
     }
-    [dartx.extend](node, offset) {
-      return this.extend(node, offset);
+    [dartx.extend](...args) {
+      return this.extend.apply(this, args);
     }
-    [dartx.getRangeAt](index) {
-      return this.getRangeAt(index);
+    [dartx.getRangeAt](...args) {
+      return this.getRangeAt.apply(this, args);
     }
-    [dartx.modify](alter, direction, granularity) {
-      return this.modify(alter, direction, granularity);
+    [dartx.modify](...args) {
+      return this.modify.apply(this, args);
     }
-    [dartx.removeAllRanges]() {
-      return this.removeAllRanges();
+    [dartx.removeAllRanges](...args) {
+      return this.removeAllRanges.apply(this, args);
     }
-    [dartx.selectAllChildren](node) {
-      return this.selectAllChildren(node);
+    [dartx.selectAllChildren](...args) {
+      return this.selectAllChildren.apply(this, args);
     }
-    [dartx.setBaseAndExtent](baseNode, baseOffset, extentNode, extentOffset) {
-      return this.setBaseAndExtent(baseNode, baseOffset, extentNode, extentOffset);
+    [dartx.setBaseAndExtent](...args) {
+      return this.setBaseAndExtent.apply(this, args);
     }
-    [dartx.setPosition](node, offset) {
-      return this.setPosition(node, offset);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
   };
   dart.setSignature(html$.Selection, {
@@ -70375,8 +70375,8 @@
     get [dartx.targetUrl]() {
       return this.targetURL;
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
     [dartx.postMessage](message, transfer) {
       if (transfer === void 0) transfer = null;
@@ -70389,11 +70389,11 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
   };
   dart.setSignature(html$.ServicePort, {
@@ -70431,18 +70431,18 @@
       }
       return this[_connect_2](url);
     }
-    [_connect_1](url, options) {
-      return this.connect(url, options);
+    [_connect_1](...args) {
+      return this.connect.apply(this, args);
     }
-    [_connect_2](url) {
-      return this.connect(url);
+    [_connect_2](...args) {
+      return this.connect.apply(this, args);
     }
     [dartx.match](options) {
       let options_1 = html_common.convertDartToNative_Dictionary(options);
       return this[_match_1](options_1);
     }
-    [_match_1](options) {
-      return this.match(options);
+    [_match_1](...args) {
+      return this.match.apply(this, args);
     }
     [dartx.matchAll](options) {
       if (options === void 0) options = null;
@@ -70452,11 +70452,11 @@
       }
       return this[_matchAll_2]();
     }
-    [_matchAll_1](options) {
-      return this.matchAll(options);
+    [_matchAll_1](...args) {
+      return this.matchAll.apply(this, args);
     }
-    [_matchAll_2]() {
-      return this.matchAll();
+    [_matchAll_2](...args) {
+      return this.matchAll.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServicePortCollection.messageEvent.forTarget(this);
@@ -70512,8 +70512,8 @@
     get [dartx.targetUrl]() {
       return this.targetURL;
     }
-    [dartx.respondWith](response) {
-      return this.respondWith(response);
+    [dartx.respondWith](...args) {
+      return this.respondWith.apply(this, args);
     }
   };
   dart.setSignature(html$.ServicePortConnectEvent, {
@@ -70551,11 +70551,11 @@
     get [dartx.ready]() {
       return this.ready;
     }
-    [dartx.getRegistration](documentURL) {
-      return this.getRegistration(documentURL);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
     [dartx.register](url, options) {
       if (options === void 0) options = null;
@@ -70565,11 +70565,11 @@
       }
       return this[_register_2](url);
     }
-    [_register_1](url, options) {
-      return this.register(url, options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2](url) {
-      return this.register(url);
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServiceWorkerContainer.messageEvent.forTarget(this);
@@ -70617,8 +70617,8 @@
     get [dartx.registration]() {
       return this.registration;
     }
-    [dartx.skipWaiting]() {
-      return this.skipWaiting();
+    [dartx.skipWaiting](...args) {
+      return this.skipWaiting.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.ServiceWorkerGlobalScope.messageEvent.forTarget(this);
@@ -70759,11 +70759,11 @@
       }
       return this[_getNotifications_2]();
     }
-    [_getNotifications_1](filter) {
-      return this.getNotifications(filter);
+    [_getNotifications_1](...args) {
+      return this.getNotifications.apply(this, args);
     }
-    [_getNotifications_2]() {
-      return this.getNotifications();
+    [_getNotifications_2](...args) {
+      return this.getNotifications.apply(this, args);
     }
     [dartx.showNotification](title, options) {
       if (options === void 0) options = null;
@@ -70773,17 +70773,17 @@
       }
       return this[_showNotification_2](title);
     }
-    [_showNotification_1](title, options) {
-      return this.showNotification(title, options);
+    [_showNotification_1](...args) {
+      return this.showNotification.apply(this, args);
     }
-    [_showNotification_2](title) {
-      return this.showNotification(title);
+    [_showNotification_2](...args) {
+      return this.showNotification.apply(this, args);
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
-    [dartx.update]() {
-      return this.update();
+    [dartx.update](...args) {
+      return this.update.apply(this, args);
     }
   };
   dart.setSignature(html$.ServiceWorkerRegistration, {
@@ -70826,8 +70826,8 @@
     static get supported() {
       return html$.Element.isTagSupported('shadow');
     }
-    [dartx.getDistributedNodes]() {
-      return this.getDistributedNodes();
+    [dartx.getDistributedNodes](...args) {
+      return this.getDistributedNodes.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.ShadowElement, 'created');
@@ -70882,17 +70882,17 @@
     get [dartx.styleSheets]() {
       return this.styleSheets;
     }
-    [dartx.clone](deep) {
-      return this.cloneNode(deep);
+    [dartx.clone](...args) {
+      return this.cloneNode.apply(this, args);
     }
-    [dartx.elementFromPoint](x, y) {
-      return this.elementFromPoint(x, y);
+    [dartx.elementFromPoint](...args) {
+      return this.elementFromPoint.apply(this, args);
     }
-    [dartx.elementsFromPoint](x, y) {
-      return this.elementsFromPoint(x, y);
+    [dartx.elementsFromPoint](...args) {
+      return this.elementsFromPoint.apply(this, args);
     }
-    [dartx.getSelection]() {
-      return this.getSelection();
+    [dartx.getSelection](...args) {
+      return this.getSelection.apply(this, args);
     }
     static get supported() {
       return !!(Element.prototype.createShadowRoot || Element.prototype.webkitCreateShadowRoot);
@@ -71102,20 +71102,20 @@
     get [dartx.updating]() {
       return this.updating;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.appendBuffer](data) {
-      return this.appendBuffer(data);
+    [dartx.appendBuffer](...args) {
+      return this.appendBuffer.apply(this, args);
     }
-    [dartx.appendStream](stream, maxSize) {
-      return this.appendStream(stream, maxSize);
+    [dartx.appendStream](...args) {
+      return this.appendStream.apply(this, args);
     }
-    [dartx.appendTypedData](data) {
-      return this.appendBuffer(data);
+    [dartx.appendTypedData](...args) {
+      return this.appendBuffer.apply(this, args);
     }
-    [dartx.remove](start, end) {
-      return this.remove(start, end);
+    [dartx.remove](...args) {
+      return this.remove.apply(this, args);
     }
   };
   dart.setSignature(html$.SourceBuffer, {
@@ -71191,8 +71191,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.SourceBufferList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSourceBuffer()];
@@ -71436,14 +71436,14 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.addFromString](string, weight) {
-      return this.addFromString(string, weight);
+    [dartx.addFromString](...args) {
+      return this.addFromString.apply(this, args);
     }
-    [dartx.addFromUri](src, weight) {
-      return this.addFromUri(src, weight);
+    [dartx.addFromUri](...args) {
+      return this.addFromUri.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.SpeechGrammarList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSpeechGrammar()];
@@ -71543,14 +71543,14 @@
     set [dartx.serviceUri](value) {
       this.serviceURI = value;
     }
-    [dartx.abort]() {
-      return this.abort();
+    [dartx.abort](...args) {
+      return this.abort.apply(this, args);
     }
-    [dartx.start]() {
-      return this.start();
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onAudioEnd]() {
       return html$.SpeechRecognition.audioEndEvent.forTarget(this);
@@ -71810,8 +71810,8 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.SpeechRecognitionResult, {
@@ -71846,20 +71846,20 @@
     get [dartx.speaking]() {
       return this.speaking;
     }
-    [dartx.cancel]() {
-      return this.cancel();
+    [dartx.cancel](...args) {
+      return this.cancel.apply(this, args);
     }
-    [dartx.getVoices]() {
-      return this.getVoices();
+    [dartx.getVoices](...args) {
+      return this.getVoices.apply(this, args);
     }
-    [dartx.pause]() {
-      return this.pause();
+    [dartx.pause](...args) {
+      return this.pause.apply(this, args);
     }
-    [dartx.resume]() {
-      return this.resume();
+    [dartx.resume](...args) {
+      return this.resume.apply(this, args);
     }
-    [dartx.speak](utterance) {
-      return this.speak(utterance);
+    [dartx.speak](...args) {
+      return this.speak.apply(this, args);
     }
   };
   dart.setSignature(html$.SpeechSynthesis, {
@@ -72124,8 +72124,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.add](name, port) {
-      return this.add(name, port);
+    [dartx.add](...args) {
+      return this.add.apply(this, args);
     }
     get [dartx.onMessage]() {
       return html$.StashedPortCollection.messageEvent.forTarget(this);
@@ -72228,29 +72228,29 @@
     get [_length$2]() {
       return this.length;
     }
-    [__delete__](index_OR_name) {
-      return this.__delete__(index_OR_name);
+    [__delete__](...args) {
+      return this.__delete__.apply(this, args);
     }
-    [__getter__](index_OR_name) {
-      return this.__getter__(index_OR_name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__setter__](index_OR_name, value) {
-      return this.__setter__(index_OR_name, value);
+    [__setter__](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [_clear$1]() {
-      return this.clear();
+    [_clear$1](...args) {
+      return this.clear.apply(this, args);
     }
-    [_getItem](key) {
-      return this.getItem(key);
+    [_getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [_key](index) {
-      return this.key(index);
+    [_key](...args) {
+      return this.key.apply(this, args);
     }
-    [_removeItem](key) {
-      return this.removeItem(key);
+    [_removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [_setItem](key, data) {
-      return this.setItem(key, data);
+    [_setItem](...args) {
+      return this.setItem.apply(this, args);
     }
   };
   html$.Storage[dart.implements] = () => [MapOfString$String()];
@@ -72336,8 +72336,8 @@
     get [dartx.url]() {
       return this.url;
     }
-    [_initStorageEvent](typeArg, canBubbleArg, cancelableArg, keyArg, oldValueArg, newValueArg, urlArg, storageAreaArg) {
-      return this.initStorageEvent(typeArg, canBubbleArg, cancelableArg, keyArg, oldValueArg, newValueArg, urlArg, storageAreaArg);
+    [_initStorageEvent](...args) {
+      return this.initStorageEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.StorageEvent, {
@@ -72395,11 +72395,11 @@
     get [dartx.supportedTypes]() {
       return this.supportedTypes;
     }
-    [dartx.queryInfo](type) {
-      return this.queryInfo(type);
+    [dartx.queryInfo](...args) {
+      return this.queryInfo.apply(this, args);
     }
-    [dartx.requestPersistentQuota](newQuota) {
-      return this.requestPersistentQuota(newQuota);
+    [dartx.requestPersistentQuota](...args) {
+      return this.requestPersistentQuota.apply(this, args);
     }
   };
   dart.setSignature(html$.StorageQuota, {
@@ -72482,8 +72482,8 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.matchMedium](mediaquery) {
-      return this.matchMedium(mediaquery);
+    [dartx.matchMedium](...args) {
+      return this.matchMedium.apply(this, args);
     }
   };
   dart.setSignature(html$.StyleMedia, {
@@ -72530,14 +72530,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getRegistration](tag) {
-      return this.getRegistration(tag);
+    [dartx.getRegistration](...args) {
+      return this.getRegistration.apply(this, args);
     }
-    [dartx.getRegistrations]() {
-      return this.getRegistrations();
+    [dartx.getRegistrations](...args) {
+      return this.getRegistrations.apply(this, args);
     }
-    [dartx.permissionState]() {
-      return this.permissionState();
+    [dartx.permissionState](...args) {
+      return this.permissionState.apply(this, args);
     }
     [dartx.register](options) {
       if (options === void 0) options = null;
@@ -72547,11 +72547,11 @@
       }
       return this[_register_2]();
     }
-    [_register_1](options) {
-      return this.register(options);
+    [_register_1](...args) {
+      return this.register.apply(this, args);
     }
-    [_register_2]() {
-      return this.register();
+    [_register_2](...args) {
+      return this.register.apply(this, args);
     }
   };
   dart.setSignature(html$.SyncManager, {
@@ -72577,8 +72577,8 @@
     get [dartx.tag]() {
       return this.tag;
     }
-    [dartx.unregister]() {
-      return this.unregister();
+    [dartx.unregister](...args) {
+      return this.unregister.apply(this, args);
     }
   };
   dart.setSignature(html$.SyncRegistration, {
@@ -72756,8 +72756,8 @@
       this[dartx.children][dartx.add](tbody);
       return html$.TableSectionElement._check(tbody);
     }
-    [_nativeCreateTBody]() {
-      return this.createTBody();
+    [_nativeCreateTBody](...args) {
+      return this.createTBody.apply(this, args);
     }
     [dartx.createFragment](html, opts) {
       let validator = opts && 'validator' in opts ? opts.validator : null;
@@ -72809,29 +72809,29 @@
     set [dartx.tHead](value) {
       this.tHead = value;
     }
-    [_createCaption]() {
-      return this.createCaption();
+    [_createCaption](...args) {
+      return this.createCaption.apply(this, args);
     }
-    [_createTFoot]() {
-      return this.createTFoot();
+    [_createTFoot](...args) {
+      return this.createTFoot.apply(this, args);
     }
-    [_createTHead]() {
-      return this.createTHead();
+    [_createTHead](...args) {
+      return this.createTHead.apply(this, args);
     }
-    [dartx.deleteCaption]() {
-      return this.deleteCaption();
+    [dartx.deleteCaption](...args) {
+      return this.deleteCaption.apply(this, args);
     }
-    [dartx.deleteRow](index) {
-      return this.deleteRow(index);
+    [dartx.deleteRow](...args) {
+      return this.deleteRow.apply(this, args);
     }
-    [dartx.deleteTFoot]() {
-      return this.deleteTFoot();
+    [dartx.deleteTFoot](...args) {
+      return this.deleteTFoot.apply(this, args);
     }
-    [dartx.deleteTHead]() {
-      return this.deleteTHead();
+    [dartx.deleteTHead](...args) {
+      return this.deleteTHead.apply(this, args);
     }
-    [_insertRow](index) {
-      return this.insertRow(index);
+    [_insertRow](...args) {
+      return this.insertRow.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableElement, 'created');
@@ -72926,11 +72926,11 @@
     get [dartx.sectionRowIndex]() {
       return this.sectionRowIndex;
     }
-    [dartx.deleteCell](index) {
-      return this.deleteCell(index);
+    [dartx.deleteCell](...args) {
+      return this.deleteCell.apply(this, args);
     }
-    [_insertCell](index) {
-      return this.insertCell(index);
+    [_insertCell](...args) {
+      return this.insertCell.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableRowElement, 'created');
@@ -72992,11 +72992,11 @@
     get [_rows]() {
       return this.rows;
     }
-    [dartx.deleteRow](index) {
-      return this.deleteRow(index);
+    [dartx.deleteRow](...args) {
+      return this.deleteRow.apply(this, args);
     }
-    [_insertRow](index) {
-      return this.insertRow(index);
+    [_insertRow](...args) {
+      return this.insertRow.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TableSectionElement, 'created');
@@ -73260,23 +73260,23 @@
     set [dartx.wrap](value) {
       this.wrap = value;
     }
-    [dartx.checkValidity]() {
-      return this.checkValidity();
+    [dartx.checkValidity](...args) {
+      return this.checkValidity.apply(this, args);
     }
-    [dartx.reportValidity]() {
-      return this.reportValidity();
+    [dartx.reportValidity](...args) {
+      return this.reportValidity.apply(this, args);
     }
-    [dartx.select]() {
-      return this.select();
+    [dartx.select](...args) {
+      return this.select.apply(this, args);
     }
-    [dartx.setCustomValidity](error) {
-      return this.setCustomValidity(error);
+    [dartx.setCustomValidity](...args) {
+      return this.setCustomValidity.apply(this, args);
     }
-    [dartx.setRangeText](replacement, opts) {
-      return this.setRangeText(replacement, opts);
+    [dartx.setRangeText](...args) {
+      return this.setRangeText.apply(this, args);
     }
-    [dartx.setSelectionRange](start, end, direction) {
-      return this.setSelectionRange(start, end, direction);
+    [dartx.setSelectionRange](...args) {
+      return this.setSelectionRange.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.TextAreaElement, 'created');
@@ -73347,8 +73347,8 @@
     get [dartx.data]() {
       return this.data;
     }
-    [_initTextEvent](typeArg, canBubbleArg, cancelableArg, viewArg, dataArg) {
-      return this.initTextEvent(typeArg, canBubbleArg, cancelableArg, viewArg, dataArg);
+    [_initTextEvent](...args) {
+      return this.initTextEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.TextEvent, {
@@ -73479,17 +73479,17 @@
     get [dartx.regions]() {
       return this.regions;
     }
-    [dartx.addCue](cue) {
-      return this.addCue(cue);
+    [dartx.addCue](...args) {
+      return this.addCue.apply(this, args);
     }
-    [dartx.addRegion](region) {
-      return this.addRegion(region);
+    [dartx.addRegion](...args) {
+      return this.addRegion.apply(this, args);
     }
-    [dartx.removeCue](cue) {
-      return this.removeCue(cue);
+    [dartx.removeCue](...args) {
+      return this.removeCue.apply(this, args);
     }
-    [dartx.removeRegion](region) {
-      return this.removeRegion(region);
+    [dartx.removeRegion](...args) {
+      return this.removeRegion.apply(this, args);
     }
     get [dartx.onCueChange]() {
       return html$.TextTrack.cueChangeEvent.forTarget(this);
@@ -73650,11 +73650,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getCueById](id) {
-      return this.getCueById(id);
+    [dartx.getCueById](...args) {
+      return this.getCueById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.TextTrackCueList[dart.implements] = () => [ListOfTextTrackCue(), _js_helper.JavaScriptIndexingBehavior];
@@ -73732,11 +73732,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
     get [dartx.onAddTrack]() {
       return html$.TextTrackList.addTrackEvent.forTarget(this);
@@ -73790,11 +73790,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.end](index) {
-      return this.end(index);
+    [dartx.end](...args) {
+      return this.end.apply(this, args);
     }
-    [dartx.start](index) {
-      return this.start(index);
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
   };
   dart.setSignature(html$.TimeRanges, {
@@ -74017,8 +74017,8 @@
     get [dartx.touches]() {
       return this.touches;
     }
-    [_initTouchEvent](touches, targetTouches, changedTouches, type, view, unused1, unused2, unused3, unused4, ctrlKey, altKey, shiftKey, metaKey) {
-      return this.initTouchEvent(touches, targetTouches, changedTouches, type, view, unused1, unused2, unused3, unused4, ctrlKey, altKey, shiftKey, metaKey);
+    [_initTouchEvent](...args) {
+      return this.initTouchEvent.apply(this, args);
     }
     static get supported() {
       return html_common.Device.isEventTypeSupported('TouchEvent');
@@ -74101,8 +74101,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$.TouchList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfTouch()];
@@ -74212,8 +74212,8 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.TrackDefaultList, {
@@ -74449,26 +74449,26 @@
     get [dartx.whatToShow]() {
       return this.whatToShow;
     }
-    [dartx.firstChild]() {
-      return this.firstChild();
+    [dartx.firstChild](...args) {
+      return this.firstChild.apply(this, args);
     }
-    [dartx.lastChild]() {
-      return this.lastChild();
+    [dartx.lastChild](...args) {
+      return this.lastChild.apply(this, args);
     }
-    [dartx.nextNode]() {
-      return this.nextNode();
+    [dartx.nextNode](...args) {
+      return this.nextNode.apply(this, args);
     }
-    [dartx.nextSibling]() {
-      return this.nextSibling();
+    [dartx.nextSibling](...args) {
+      return this.nextSibling.apply(this, args);
     }
-    [dartx.parentNode]() {
-      return this.parentNode();
+    [dartx.parentNode](...args) {
+      return this.parentNode.apply(this, args);
     }
-    [dartx.previousNode]() {
-      return this.previousNode();
+    [dartx.previousNode](...args) {
+      return this.previousNode.apply(this, args);
     }
-    [dartx.previousSibling]() {
-      return this.previousSibling();
+    [dartx.previousSibling](...args) {
+      return this.previousSibling.apply(this, args);
     }
   };
   dart.setSignature(html$.TreeWalker, {
@@ -75178,14 +75178,14 @@
     set [dartx.width](value) {
       this.width = value;
     }
-    [dartx.getVideoPlaybackQuality]() {
-      return this.getVideoPlaybackQuality();
+    [dartx.getVideoPlaybackQuality](...args) {
+      return this.getVideoPlaybackQuality.apply(this, args);
     }
-    [dartx.enterFullscreen]() {
-      return this.webkitEnterFullscreen();
+    [dartx.enterFullscreen](...args) {
+      return this.webkitEnterFullscreen.apply(this, args);
     }
-    [dartx.exitFullscreen]() {
-      return this.webkitExitFullscreen();
+    [dartx.exitFullscreen](...args) {
+      return this.webkitExitFullscreen.apply(this, args);
     }
   };
   dart.defineNamedConstructor(html$.VideoElement, 'created');
@@ -75302,11 +75302,11 @@
     get [dartx.selectedIndex]() {
       return this.selectedIndex;
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.getTrackById](id) {
-      return this.getTrackById(id);
+    [dartx.getTrackById](...args) {
+      return this.getTrackById.apply(this, args);
     }
     get [dartx.onChange]() {
       return html$.VideoTrackList.changeEvent.forTarget(this);
@@ -75401,8 +75401,8 @@
     set [dartx.vertical](value) {
       this.vertical = value;
     }
-    [dartx.getCueAsHtml]() {
-      return this.getCueAsHTML();
+    [dartx.getCueAsHtml](...args) {
+      return this.getCueAsHTML.apply(this, args);
     }
   };
   dart.setSignature(html$.VttCue, {
@@ -75530,11 +75530,11 @@
     get [dartx.length]() {
       return this.length;
     }
-    [dartx.getRegionById](id) {
-      return this.getRegionById(id);
+    [dartx.getRegionById](...args) {
+      return this.getRegionById.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$.VttRegionList, {
@@ -75605,23 +75605,23 @@
     get [dartx.url]() {
       return this.url;
     }
-    [dartx.close](code, reason) {
-      return this.close(code, reason);
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.send](data) {
-      return this.send(data);
+    [dartx.send](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendBlob](data) {
-      return this.send(data);
+    [dartx.sendBlob](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendByteBuffer](data) {
-      return this.send(data);
+    [dartx.sendByteBuffer](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendString](data) {
-      return this.send(data);
+    [dartx.sendString](...args) {
+      return this.send.apply(this, args);
     }
-    [dartx.sendTypedData](data) {
-      return this.send(data);
+    [dartx.sendTypedData](...args) {
+      return this.send.apply(this, args);
     }
     get [dartx.onClose]() {
       return html$.WebSocket.closeEvent.forTarget(this);
@@ -75792,14 +75792,14 @@
     get [_hasInitMouseScrollEvent]() {
       return !!this.initMouseScrollEvent;
     }
-    [_initMouseScrollEvent](type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget, axis) {
-      return this.initMouseScrollEvent(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget, axis);
+    [_initMouseScrollEvent](...args) {
+      return this.initMouseScrollEvent.apply(this, args);
     }
     get [_hasInitWheelEvent]() {
       return !!this.initWheelEvent;
     }
-    [_initWheelEvent](eventType, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, button, relatedTarget, modifiersList, deltaX, deltaY, deltaZ, deltaMode) {
-      return this.initWheelEvent(eventType, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, button, relatedTarget, modifiersList, deltaX, deltaY, deltaZ, deltaMode);
+    [_initWheelEvent](...args) {
+      return this.initWheelEvent.apply(this, args);
     }
   };
   dart.setSignature(html$.WheelEvent, {
@@ -76061,11 +76061,11 @@
       this[_ensureRequestAnimationFrame]();
       this[_cancelAnimationFrame](id);
     }
-    [_requestAnimationFrame](callback) {
-      return this.requestAnimationFrame(callback);
+    [_requestAnimationFrame](...args) {
+      return this.requestAnimationFrame.apply(this, args);
     }
-    [_cancelAnimationFrame](id) {
-      return this.cancelAnimationFrame(id);
+    [_cancelAnimationFrame](...args) {
+      return this.cancelAnimationFrame.apply(this, args);
     }
     [_ensureRequestAnimationFrame]() {
       if (!!(this.requestAnimationFrame && this.cancelAnimationFrame)) return;
@@ -76258,20 +76258,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [__getter___1](index) {
-      return this.__getter__(index);
+    [__getter___1](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [__getter___2](name) {
-      return this.__getter__(name);
+    [__getter___2](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.alert](message) {
-      return this.alert(message);
+    [dartx.alert](...args) {
+      return this.alert.apply(this, args);
     }
-    [dartx.close]() {
-      return this.close();
+    [dartx.close](...args) {
+      return this.close.apply(this, args);
     }
-    [dartx.confirm](message) {
-      return this.confirm(message);
+    [dartx.confirm](...args) {
+      return this.confirm.apply(this, args);
     }
     [dartx.fetch](input, init) {
       if (init === void 0) init = null;
@@ -76281,35 +76281,35 @@
       }
       return this[_fetch_2](input);
     }
-    [_fetch_1](input, init) {
-      return this.fetch(input, init);
+    [_fetch_1](...args) {
+      return this.fetch.apply(this, args);
     }
-    [_fetch_2](input) {
-      return this.fetch(input);
+    [_fetch_2](...args) {
+      return this.fetch.apply(this, args);
     }
-    [dartx.find](string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog) {
-      return this.find(string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog);
+    [dartx.find](...args) {
+      return this.find.apply(this, args);
     }
-    [_getComputedStyle](elt, pseudoElt) {
-      return this.getComputedStyle(elt, pseudoElt);
+    [_getComputedStyle](...args) {
+      return this.getComputedStyle.apply(this, args);
     }
-    [dartx.getMatchedCssRules](element, pseudoElement) {
-      return this.getMatchedCSSRules(element, pseudoElement);
+    [dartx.getMatchedCssRules](...args) {
+      return this.getMatchedCSSRules.apply(this, args);
     }
-    [dartx.getSelection]() {
-      return this.getSelection();
+    [dartx.getSelection](...args) {
+      return this.getSelection.apply(this, args);
     }
-    [dartx.matchMedia](query) {
-      return this.matchMedia(query);
+    [dartx.matchMedia](...args) {
+      return this.matchMedia.apply(this, args);
     }
-    [dartx.moveBy](x, y) {
-      return this.moveBy(x, y);
+    [dartx.moveBy](...args) {
+      return this.moveBy.apply(this, args);
     }
-    [_moveTo](x, y) {
-      return this.moveTo(x, y);
+    [_moveTo](...args) {
+      return this.moveTo.apply(this, args);
     }
-    [dartx.openDatabase](name, version, displayName, estimatedSize, creationCallback) {
-      return this.openDatabase(name, version, displayName, estimatedSize, creationCallback);
+    [dartx.openDatabase](...args) {
+      return this.openDatabase.apply(this, args);
     }
     [dartx.postMessage](message, targetOrigin, transfer) {
       if (transfer === void 0) transfer = null;
@@ -76322,20 +76322,20 @@
       this[_postMessage_2](message_1, targetOrigin);
       return;
     }
-    [_postMessage_1](message, targetOrigin, transfer) {
-      return this.postMessage(message, targetOrigin, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message, targetOrigin) {
-      return this.postMessage(message, targetOrigin);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.print]() {
-      return this.print();
+    [dartx.print](...args) {
+      return this.print.apply(this, args);
     }
-    [dartx.resizeBy](x, y) {
-      return this.resizeBy(x, y);
+    [dartx.resizeBy](...args) {
+      return this.resizeBy.apply(this, args);
     }
-    [dartx.resizeTo](x, y) {
-      return this.resizeTo(x, y);
+    [dartx.resizeTo](...args) {
+      return this.resizeTo.apply(this, args);
     }
     [dartx.scroll](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76365,20 +76365,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scroll_1]() {
-      return this.scroll();
+    [_scroll_1](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_2](options) {
-      return this.scroll(options);
+    [_scroll_2](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_3](x, y) {
-      return this.scroll(x, y);
+    [_scroll_3](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_4](x, y) {
-      return this.scroll(x, y);
+    [_scroll_4](...args) {
+      return this.scroll.apply(this, args);
     }
-    [_scroll_5](x, y, scrollOptions) {
-      return this.scroll(x, y, scrollOptions);
+    [_scroll_5](...args) {
+      return this.scroll.apply(this, args);
     }
     [dartx.scrollBy](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76408,20 +76408,20 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollBy_1]() {
-      return this.scrollBy();
+    [_scrollBy_1](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_2](options) {
-      return this.scrollBy(options);
+    [_scrollBy_2](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_3](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_3](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_4](x, y) {
-      return this.scrollBy(x, y);
+    [_scrollBy_4](...args) {
+      return this.scrollBy.apply(this, args);
     }
-    [_scrollBy_5](x, y, scrollOptions) {
-      return this.scrollBy(x, y, scrollOptions);
+    [_scrollBy_5](...args) {
+      return this.scrollBy.apply(this, args);
     }
     [dartx.scrollTo](options_OR_x, y, scrollOptions) {
       if (options_OR_x === void 0) options_OR_x = null;
@@ -76451,26 +76451,26 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_scrollTo_1]() {
-      return this.scrollTo();
+    [_scrollTo_1](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_2](options) {
-      return this.scrollTo(options);
+    [_scrollTo_2](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_3](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_3](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_4](x, y) {
-      return this.scrollTo(x, y);
+    [_scrollTo_4](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [_scrollTo_5](x, y, scrollOptions) {
-      return this.scrollTo(x, y, scrollOptions);
+    [_scrollTo_5](...args) {
+      return this.scrollTo.apply(this, args);
     }
-    [dartx.stop]() {
-      return this.stop();
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
-    [__requestFileSystem](type, size, successCallback, errorCallback) {
-      return this.webkitRequestFileSystem(type, size, successCallback, errorCallback);
+    [__requestFileSystem](...args) {
+      return this.webkitRequestFileSystem.apply(this, args);
     }
     [_requestFileSystem](type, size) {
       let completer = CompleterOfFileSystem().new();
@@ -76481,8 +76481,8 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [_resolveLocalFileSystemUrl](url, successCallback, errorCallback) {
-      return this.webkitResolveLocalFileSystemURL(url, successCallback, errorCallback);
+    [_resolveLocalFileSystemUrl](...args) {
+      return this.webkitResolveLocalFileSystemURL.apply(this, args);
     }
     [dartx.resolveLocalFileSystemUrl](url) {
       let completer = CompleterOfEntry().new();
@@ -76493,29 +76493,29 @@
       }, FileErrorTovoid()));
       return completer.future;
     }
-    [dartx.atob](atob) {
-      return this.atob(atob);
+    [dartx.atob](...args) {
+      return this.atob.apply(this, args);
     }
-    [dartx.btoa](btoa) {
-      return this.btoa(btoa);
+    [dartx.btoa](...args) {
+      return this.btoa.apply(this, args);
     }
-    [_setInterval_String](handler, timeout, arguments$) {
-      return this.setInterval(handler, timeout, arguments$);
+    [_setInterval_String](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout_String](handler, timeout, arguments$) {
-      return this.setTimeout(handler, timeout, arguments$);
+    [_setTimeout_String](...args) {
+      return this.setTimeout.apply(this, args);
     }
-    [_clearInterval](handle) {
-      return this.clearInterval(handle);
+    [_clearInterval](...args) {
+      return this.clearInterval.apply(this, args);
     }
-    [_clearTimeout](handle) {
-      return this.clearTimeout(handle);
+    [_clearTimeout](...args) {
+      return this.clearTimeout.apply(this, args);
     }
-    [_setInterval](handler, timeout) {
-      return this.setInterval(handler, timeout);
+    [_setInterval](...args) {
+      return this.setInterval.apply(this, args);
     }
-    [_setTimeout](handler, timeout) {
-      return this.setTimeout(handler, timeout);
+    [_setTimeout](...args) {
+      return this.setTimeout.apply(this, args);
     }
     get [dartx.onContentLoaded]() {
       return html$.Window.contentLoadedEvent.forTarget(this);
@@ -77229,8 +77229,8 @@
     get [dartx.visibilityState]() {
       return this.visibilityState;
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
   };
   dart.setSignature(html$.WindowClient, {
@@ -77360,14 +77360,14 @@
       this[_postMessage_2](message_1);
       return;
     }
-    [_postMessage_1](message, transfer) {
-      return this.postMessage(message, transfer);
+    [_postMessage_1](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [_postMessage_2](message) {
-      return this.postMessage(message);
+    [_postMessage_2](...args) {
+      return this.postMessage.apply(this, args);
     }
-    [dartx.terminate]() {
-      return this.terminate();
+    [dartx.terminate](...args) {
+      return this.terminate.apply(this, args);
     }
     get [dartx.onError]() {
       return html$.Worker.errorEvent.forTarget(this);
@@ -77438,35 +77438,35 @@
     get [dartx.memory]() {
       return this.memory;
     }
-    [dartx.clearMarks](markName) {
-      return this.clearMarks(markName);
+    [dartx.clearMarks](...args) {
+      return this.clearMarks.apply(this, args);
     }
-    [dartx.clearMeasures](measureName) {
-      return this.clearMeasures(measureName);
+    [dartx.clearMeasures](...args) {
+      return this.clearMeasures.apply(this, args);
     }
-    [dartx.getEntries]() {
-      return this.getEntries();
+    [dartx.getEntries](...args) {
+      return this.getEntries.apply(this, args);
     }
-    [dartx.getEntriesByName](name, entryType) {
-      return this.getEntriesByName(name, entryType);
+    [dartx.getEntriesByName](...args) {
+      return this.getEntriesByName.apply(this, args);
     }
-    [dartx.getEntriesByType](entryType) {
-      return this.getEntriesByType(entryType);
+    [dartx.getEntriesByType](...args) {
+      return this.getEntriesByType.apply(this, args);
     }
-    [dartx.mark](markName) {
-      return this.mark(markName);
+    [dartx.mark](...args) {
+      return this.mark.apply(this, args);
     }
-    [dartx.measure](measureName, startMark, endMark) {
-      return this.measure(measureName, startMark, endMark);
+    [dartx.measure](...args) {
+      return this.measure.apply(this, args);
     }
-    [dartx.now]() {
-      return this.now();
+    [dartx.now](...args) {
+      return this.now.apply(this, args);
     }
-    [dartx.clearResourceTimings]() {
-      return this.webkitClearResourceTimings();
+    [dartx.clearResourceTimings](...args) {
+      return this.webkitClearResourceTimings.apply(this, args);
     }
-    [dartx.setResourceTimingBufferSize](maxSize) {
-      return this.webkitSetResourceTimingBufferSize(maxSize);
+    [dartx.setResourceTimingBufferSize](...args) {
+      return this.webkitSetResourceTimingBufferSize.apply(this, args);
     }
   };
   dart.setSignature(html$.WorkerPerformance, {
@@ -77501,14 +77501,14 @@
     static _create_1() {
       return new XPathEvaluator();
     }
-    [dartx.createExpression](expression, resolver) {
-      return this.createExpression(expression, resolver);
+    [dartx.createExpression](...args) {
+      return this.createExpression.apply(this, args);
     }
-    [dartx.createNSResolver](nodeResolver) {
-      return this.createNSResolver(nodeResolver);
+    [dartx.createNSResolver](...args) {
+      return this.createNSResolver.apply(this, args);
     }
-    [dartx.evaluate](expression, contextNode, resolver, type, inResult) {
-      return this.evaluate(expression, contextNode, resolver, type, inResult);
+    [dartx.evaluate](...args) {
+      return this.evaluate.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathEvaluator, {
@@ -77532,8 +77532,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.evaluate](contextNode, type, inResult) {
-      return this.evaluate(contextNode, type, inResult);
+    [dartx.evaluate](...args) {
+      return this.evaluate.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathExpression, {
@@ -77548,8 +77548,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.lookupNamespaceUri](prefix) {
-      return this.lookupNamespaceURI(prefix);
+    [dartx.lookupNamespaceUri](...args) {
+      return this.lookupNamespaceURI.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathNSResolver, {
@@ -77593,11 +77593,11 @@
     get [dartx.stringValue]() {
       return this.stringValue;
     }
-    [dartx.iterateNext]() {
-      return this.iterateNext();
+    [dartx.iterateNext](...args) {
+      return this.iterateNext.apply(this, args);
     }
-    [dartx.snapshotItem](index) {
-      return this.snapshotItem(index);
+    [dartx.snapshotItem](...args) {
+      return this.snapshotItem.apply(this, args);
     }
   };
   dart.setSignature(html$.XPathResult, {
@@ -77661,8 +77661,8 @@
     static _create_1() {
       return new XMLSerializer();
     }
-    [dartx.serializeToString](root) {
-      return this.serializeToString(root);
+    [dartx.serializeToString](...args) {
+      return this.serializeToString.apply(this, args);
     }
   };
   dart.setSignature(html$.XmlSerializer, {
@@ -77698,29 +77698,29 @@
     static get supported() {
       return !!window.XSLTProcessor;
     }
-    [dartx.clearParameters]() {
-      return this.clearParameters();
+    [dartx.clearParameters](...args) {
+      return this.clearParameters.apply(this, args);
     }
-    [dartx.getParameter](namespaceURI, localName) {
-      return this.getParameter(namespaceURI, localName);
+    [dartx.getParameter](...args) {
+      return this.getParameter.apply(this, args);
     }
-    [dartx.importStylesheet](style) {
-      return this.importStylesheet(style);
+    [dartx.importStylesheet](...args) {
+      return this.importStylesheet.apply(this, args);
     }
-    [dartx.removeParameter](namespaceURI, localName) {
-      return this.removeParameter(namespaceURI, localName);
+    [dartx.removeParameter](...args) {
+      return this.removeParameter.apply(this, args);
     }
-    [dartx.reset]() {
-      return this.reset();
+    [dartx.reset](...args) {
+      return this.reset.apply(this, args);
     }
-    [dartx.setParameter](namespaceURI, localName, value) {
-      return this.setParameter(namespaceURI, localName, value);
+    [dartx.setParameter](...args) {
+      return this.setParameter.apply(this, args);
     }
-    [dartx.transformToDocument](source) {
-      return this.transformToDocument(source);
+    [dartx.transformToDocument](...args) {
+      return this.transformToDocument.apply(this, args);
     }
-    [dartx.transformToFragment](source, output) {
-      return this.transformToFragment(source, output);
+    [dartx.transformToFragment](...args) {
+      return this.transformToFragment.apply(this, args);
     }
   };
   dart.setSignature(html$.XsltProcessor, {
@@ -77985,11 +77985,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](index) {
-      return this.__getter__(index);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._ClientRectList[dart.implements] = () => [ListOfRectangleOfnum()];
@@ -78065,8 +78065,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._CssRuleList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfCssRule()];
@@ -78318,8 +78318,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._GamepadList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfGamepad()];
@@ -78344,8 +78344,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [_item](index) {
-      return this.item(index);
+    [_item](...args) {
+      return this.item.apply(this, args);
     }
   };
   dart.setSignature(html$._HTMLAllCollection, {
@@ -78509,26 +78509,26 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.getNamedItem](name) {
-      return this.getNamedItem(name);
+    [dartx.getNamedItem](...args) {
+      return this.getNamedItem.apply(this, args);
     }
-    [dartx.getNamedItemNS](namespaceURI, localName) {
-      return this.getNamedItemNS(namespaceURI, localName);
+    [dartx.getNamedItemNS](...args) {
+      return this.getNamedItemNS.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
-    [dartx.removeNamedItem](name) {
-      return this.removeNamedItem(name);
+    [dartx.removeNamedItem](...args) {
+      return this.removeNamedItem.apply(this, args);
     }
-    [dartx.removeNamedItemNS](namespaceURI, localName) {
-      return this.removeNamedItemNS(namespaceURI, localName);
+    [dartx.removeNamedItemNS](...args) {
+      return this.removeNamedItemNS.apply(this, args);
     }
-    [dartx.setNamedItem](attr) {
-      return this.setNamedItem(attr);
+    [dartx.setNamedItem](...args) {
+      return this.setNamedItem.apply(this, args);
     }
-    [dartx.setNamedItemNS](attr) {
-      return this.setNamedItemNS(attr);
+    [dartx.setNamedItemNS](...args) {
+      return this.setNamedItemNS.apply(this, args);
     }
   };
   html$._NamedNodeMap[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfNode()];
@@ -78610,8 +78610,8 @@
     get [dartx.url]() {
       return this.url;
     }
-    [dartx.clone]() {
-      return this.clone();
+    [dartx.clone](...args) {
+      return this.clone.apply(this, args);
     }
   };
   dart.setSignature(html$._Request, {
@@ -78737,8 +78737,8 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._SpeechRecognitionResultList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfSpeechRecognitionResult()];
@@ -78812,11 +78812,11 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__getter__](name) {
-      return this.__getter__(name);
+    [__getter__](...args) {
+      return this.__getter__.apply(this, args);
     }
-    [dartx.item](index) {
-      return this.item(index);
+    [dartx.item](...args) {
+      return this.item.apply(this, args);
     }
   };
   html$._StyleSheetList[dart.implements] = () => [_js_helper.JavaScriptIndexingBehavior, ListOfStyleSheet()];
@@ -84008,11 +84008,11 @@
     get [dartx.viewportElement]() {
       return this.viewportElement;
     }
-    [dartx.blur]() {
-      return this.blur();
+    [dartx.blur](...args) {
+      return this.blur.apply(this, args);
     }
-    [dartx.focus]() {
-      return this.focus();
+    [dartx.focus](...args) {
+      return this.focus.apply(this, args);
     }
     get [dartx.onAbort]() {
       return svg$.SvgElement.abortEvent.forElement(this);
@@ -84441,17 +84441,17 @@
     get [dartx.transform]() {
       return this.transform;
     }
-    [dartx.getBBox]() {
-      return this.getBBox();
+    [dartx.getBBox](...args) {
+      return this.getBBox.apply(this, args);
     }
-    [dartx.getCtm]() {
-      return this.getCTM();
+    [dartx.getCtm](...args) {
+      return this.getCTM.apply(this, args);
     }
-    [dartx.getScreenCtm]() {
-      return this.getScreenCTM();
+    [dartx.getScreenCtm](...args) {
+      return this.getScreenCTM.apply(this, args);
     }
-    [dartx.getTransformToElement](element) {
-      return this.getTransformToElement(element);
+    [dartx.getTransformToElement](...args) {
+      return this.getTransformToElement.apply(this, args);
     }
     get [dartx.requiredExtensions]() {
       return this.requiredExtensions;
@@ -84462,8 +84462,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.GraphicsElement, 'created');
@@ -84560,11 +84560,11 @@
     set [dartx.valueInSpecifiedUnits](value) {
       this.valueInSpecifiedUnits = value;
     }
-    [dartx.convertToSpecifiedUnits](unitType) {
-      return this.convertToSpecifiedUnits(unitType);
+    [dartx.convertToSpecifiedUnits](...args) {
+      return this.convertToSpecifiedUnits.apply(this, args);
     }
-    [dartx.newValueSpecifiedUnits](unitType, valueInSpecifiedUnits) {
-      return this.newValueSpecifiedUnits(unitType, valueInSpecifiedUnits);
+    [dartx.newValueSpecifiedUnits](...args) {
+      return this.newValueSpecifiedUnits.apply(this, args);
     }
   };
   dart.setSignature(svg$.Angle, {
@@ -84624,26 +84624,26 @@
     get [dartx.targetElement]() {
       return this.targetElement;
     }
-    [dartx.beginElement]() {
-      return this.beginElement();
+    [dartx.beginElement](...args) {
+      return this.beginElement.apply(this, args);
     }
-    [dartx.beginElementAt](offset) {
-      return this.beginElementAt(offset);
+    [dartx.beginElementAt](...args) {
+      return this.beginElementAt.apply(this, args);
     }
-    [dartx.endElement]() {
-      return this.endElement();
+    [dartx.endElement](...args) {
+      return this.endElement.apply(this, args);
     }
-    [dartx.endElementAt](offset) {
-      return this.endElementAt(offset);
+    [dartx.endElementAt](...args) {
+      return this.endElementAt.apply(this, args);
     }
-    [dartx.getCurrentTime]() {
-      return this.getCurrentTime();
+    [dartx.getCurrentTime](...args) {
+      return this.getCurrentTime.apply(this, args);
     }
-    [dartx.getSimpleDuration]() {
-      return this.getSimpleDuration();
+    [dartx.getSimpleDuration](...args) {
+      return this.getSimpleDuration.apply(this, args);
     }
-    [dartx.getStartTime]() {
-      return this.getStartTime();
+    [dartx.getStartTime](...args) {
+      return this.getStartTime.apply(this, args);
     }
     get [dartx.requiredExtensions]() {
       return this.requiredExtensions;
@@ -84654,8 +84654,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.AnimationElement, 'created');
@@ -85058,11 +85058,11 @@
     created() {
       super.created();
     }
-    [dartx.isPointInFill](point) {
-      return this.isPointInFill(point);
+    [dartx.isPointInFill](...args) {
+      return this.isPointInFill.apply(this, args);
     }
-    [dartx.isPointInStroke](point) {
-      return this.isPointInStroke(point);
+    [dartx.isPointInStroke](...args) {
+      return this.isPointInStroke.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.GeometryElement, 'created');
@@ -86188,8 +86188,8 @@
     get [dartx.stdDeviationY]() {
       return this.stdDeviationY;
     }
-    [dartx.setStdDeviation](stdDeviationX, stdDeviationY) {
-      return this.setStdDeviation(stdDeviationX, stdDeviationY);
+    [dartx.setStdDeviation](...args) {
+      return this.setStdDeviation.apply(this, args);
     }
     get [dartx.height]() {
       return this.height;
@@ -87274,11 +87274,11 @@
     set [dartx.valueInSpecifiedUnits](value) {
       this.valueInSpecifiedUnits = value;
     }
-    [dartx.convertToSpecifiedUnits](unitType) {
-      return this.convertToSpecifiedUnits(unitType);
+    [dartx.convertToSpecifiedUnits](...args) {
+      return this.convertToSpecifiedUnits.apply(this, args);
     }
-    [dartx.newValueSpecifiedUnits](unitType, valueInSpecifiedUnits) {
-      return this.newValueSpecifiedUnits(unitType, valueInSpecifiedUnits);
+    [dartx.newValueSpecifiedUnits](...args) {
+      return this.newValueSpecifiedUnits.apply(this, args);
     }
   };
   dart.setSignature(svg$.Length, {
@@ -87383,29 +87383,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.LengthList[dart.implements] = () => [ListOfLength()];
@@ -87637,11 +87637,11 @@
     get [dartx.refY]() {
       return this.refY;
     }
-    [dartx.setOrientToAngle](angle) {
-      return this.setOrientToAngle(angle);
+    [dartx.setOrientToAngle](...args) {
+      return this.setOrientToAngle.apply(this, args);
     }
-    [dartx.setOrientToAuto]() {
-      return this.setOrientToAuto();
+    [dartx.setOrientToAuto](...args) {
+      return this.setOrientToAuto.apply(this, args);
     }
     get [dartx.preserveAspectRatio]() {
       return this.preserveAspectRatio;
@@ -87747,8 +87747,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.MaskElement, 'created');
@@ -87832,38 +87832,38 @@
     set [dartx.f](value) {
       this.f = value;
     }
-    [dartx.flipX]() {
-      return this.flipX();
+    [dartx.flipX](...args) {
+      return this.flipX.apply(this, args);
     }
-    [dartx.flipY]() {
-      return this.flipY();
+    [dartx.flipY](...args) {
+      return this.flipY.apply(this, args);
     }
-    [dartx.inverse]() {
-      return this.inverse();
+    [dartx.inverse](...args) {
+      return this.inverse.apply(this, args);
     }
-    [dartx.multiply](secondMatrix) {
-      return this.multiply(secondMatrix);
+    [dartx.multiply](...args) {
+      return this.multiply.apply(this, args);
     }
-    [dartx.rotate](angle) {
-      return this.rotate(angle);
+    [dartx.rotate](...args) {
+      return this.rotate.apply(this, args);
     }
-    [dartx.rotateFromVector](x, y) {
-      return this.rotateFromVector(x, y);
+    [dartx.rotateFromVector](...args) {
+      return this.rotateFromVector.apply(this, args);
     }
-    [dartx.scale](scaleFactor) {
-      return this.scale(scaleFactor);
+    [dartx.scale](...args) {
+      return this.scale.apply(this, args);
     }
-    [dartx.scaleNonUniform](scaleFactorX, scaleFactorY) {
-      return this.scaleNonUniform(scaleFactorX, scaleFactorY);
+    [dartx.scaleNonUniform](...args) {
+      return this.scaleNonUniform.apply(this, args);
     }
-    [dartx.skewX](angle) {
-      return this.skewX(angle);
+    [dartx.skewX](...args) {
+      return this.skewX.apply(this, args);
     }
-    [dartx.skewY](angle) {
-      return this.skewY(angle);
+    [dartx.skewY](...args) {
+      return this.skewY.apply(this, args);
     }
-    [dartx.translate](x, y) {
-      return this.translate(x, y);
+    [dartx.translate](...args) {
+      return this.translate.apply(this, args);
     }
   };
   dart.setSignature(svg$.Matrix, {
@@ -87989,29 +87989,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.NumberList[dart.implements] = () => [ListOfNumber()];
@@ -88098,71 +88098,71 @@
     get [dartx.pathSegList]() {
       return this.pathSegList;
     }
-    [dartx.createSvgPathSegArcAbs](x, y, r1, r2, angle, largeArcFlag, sweepFlag) {
-      return this.createSVGPathSegArcAbs(x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+    [dartx.createSvgPathSegArcAbs](...args) {
+      return this.createSVGPathSegArcAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegArcRel](x, y, r1, r2, angle, largeArcFlag, sweepFlag) {
-      return this.createSVGPathSegArcRel(x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+    [dartx.createSvgPathSegArcRel](...args) {
+      return this.createSVGPathSegArcRel.apply(this, args);
     }
-    [dartx.createSvgPathSegClosePath]() {
-      return this.createSVGPathSegClosePath();
+    [dartx.createSvgPathSegClosePath](...args) {
+      return this.createSVGPathSegClosePath.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicAbs](x, y, x1, y1, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicAbs(x, y, x1, y1, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicAbs](...args) {
+      return this.createSVGPathSegCurvetoCubicAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicRel](x, y, x1, y1, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicRel(x, y, x1, y1, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicRel](...args) {
+      return this.createSVGPathSegCurvetoCubicRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicSmoothAbs](x, y, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicSmoothAbs(x, y, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicSmoothAbs](...args) {
+      return this.createSVGPathSegCurvetoCubicSmoothAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoCubicSmoothRel](x, y, x2, y2) {
-      return this.createSVGPathSegCurvetoCubicSmoothRel(x, y, x2, y2);
+    [dartx.createSvgPathSegCurvetoCubicSmoothRel](...args) {
+      return this.createSVGPathSegCurvetoCubicSmoothRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticAbs](x, y, x1, y1) {
-      return this.createSVGPathSegCurvetoQuadraticAbs(x, y, x1, y1);
+    [dartx.createSvgPathSegCurvetoQuadraticAbs](...args) {
+      return this.createSVGPathSegCurvetoQuadraticAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticRel](x, y, x1, y1) {
-      return this.createSVGPathSegCurvetoQuadraticRel(x, y, x1, y1);
+    [dartx.createSvgPathSegCurvetoQuadraticRel](...args) {
+      return this.createSVGPathSegCurvetoQuadraticRel.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticSmoothAbs](x, y) {
-      return this.createSVGPathSegCurvetoQuadraticSmoothAbs(x, y);
+    [dartx.createSvgPathSegCurvetoQuadraticSmoothAbs](...args) {
+      return this.createSVGPathSegCurvetoQuadraticSmoothAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegCurvetoQuadraticSmoothRel](x, y) {
-      return this.createSVGPathSegCurvetoQuadraticSmoothRel(x, y);
+    [dartx.createSvgPathSegCurvetoQuadraticSmoothRel](...args) {
+      return this.createSVGPathSegCurvetoQuadraticSmoothRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoAbs](x, y) {
-      return this.createSVGPathSegLinetoAbs(x, y);
+    [dartx.createSvgPathSegLinetoAbs](...args) {
+      return this.createSVGPathSegLinetoAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoHorizontalAbs](x) {
-      return this.createSVGPathSegLinetoHorizontalAbs(x);
+    [dartx.createSvgPathSegLinetoHorizontalAbs](...args) {
+      return this.createSVGPathSegLinetoHorizontalAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoHorizontalRel](x) {
-      return this.createSVGPathSegLinetoHorizontalRel(x);
+    [dartx.createSvgPathSegLinetoHorizontalRel](...args) {
+      return this.createSVGPathSegLinetoHorizontalRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoRel](x, y) {
-      return this.createSVGPathSegLinetoRel(x, y);
+    [dartx.createSvgPathSegLinetoRel](...args) {
+      return this.createSVGPathSegLinetoRel.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoVerticalAbs](y) {
-      return this.createSVGPathSegLinetoVerticalAbs(y);
+    [dartx.createSvgPathSegLinetoVerticalAbs](...args) {
+      return this.createSVGPathSegLinetoVerticalAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegLinetoVerticalRel](y) {
-      return this.createSVGPathSegLinetoVerticalRel(y);
+    [dartx.createSvgPathSegLinetoVerticalRel](...args) {
+      return this.createSVGPathSegLinetoVerticalRel.apply(this, args);
     }
-    [dartx.createSvgPathSegMovetoAbs](x, y) {
-      return this.createSVGPathSegMovetoAbs(x, y);
+    [dartx.createSvgPathSegMovetoAbs](...args) {
+      return this.createSVGPathSegMovetoAbs.apply(this, args);
     }
-    [dartx.createSvgPathSegMovetoRel](x, y) {
-      return this.createSVGPathSegMovetoRel(x, y);
+    [dartx.createSvgPathSegMovetoRel](...args) {
+      return this.createSVGPathSegMovetoRel.apply(this, args);
     }
-    [dartx.getPathSegAtLength](distance) {
-      return this.getPathSegAtLength(distance);
+    [dartx.getPathSegAtLength](...args) {
+      return this.getPathSegAtLength.apply(this, args);
     }
-    [dartx.getPointAtLength](distance) {
-      return this.getPointAtLength(distance);
+    [dartx.getPointAtLength](...args) {
+      return this.getPointAtLength.apply(this, args);
     }
-    [dartx.getTotalLength]() {
-      return this.getTotalLength();
+    [dartx.getTotalLength](...args) {
+      return this.getTotalLength.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.PathElement, 'created');
@@ -88974,29 +88974,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.PathSegList[dart.implements] = () => [ListOfPathSeg()];
@@ -89157,8 +89157,8 @@
     get [dartx.systemLanguage]() {
       return this.systemLanguage;
     }
-    [dartx.hasExtension](extension) {
-      return this.hasExtension(extension);
+    [dartx.hasExtension](...args) {
+      return this.hasExtension.apply(this, args);
     }
     get [dartx.href]() {
       return this.href;
@@ -89211,8 +89211,8 @@
     set [dartx.y](value) {
       this.y = value;
     }
-    [dartx.matrixTransform](matrix) {
-      return this.matrixTransform(matrix);
+    [dartx.matrixTransform](...args) {
+      return this.matrixTransform.apply(this, args);
     }
   };
   dart.setSignature(svg$.Point, {
@@ -89245,29 +89245,29 @@
     get [dartx.numberOfItems]() {
       return this.numberOfItems;
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   dart.setSignature(svg$.PointList, {
@@ -89739,29 +89739,29 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](item, index) {
-      return this.insertItemBefore(item, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.StringList[dart.implements] = () => [ListOfString()];
@@ -89988,74 +89988,74 @@
     get [dartx.y]() {
       return this.y;
     }
-    [dartx.animationsPaused]() {
-      return this.animationsPaused();
+    [dartx.animationsPaused](...args) {
+      return this.animationsPaused.apply(this, args);
     }
-    [dartx.checkEnclosure](element, rect) {
-      return this.checkEnclosure(element, rect);
+    [dartx.checkEnclosure](...args) {
+      return this.checkEnclosure.apply(this, args);
     }
-    [dartx.checkIntersection](element, rect) {
-      return this.checkIntersection(element, rect);
+    [dartx.checkIntersection](...args) {
+      return this.checkIntersection.apply(this, args);
     }
-    [dartx.createSvgAngle]() {
-      return this.createSVGAngle();
+    [dartx.createSvgAngle](...args) {
+      return this.createSVGAngle.apply(this, args);
     }
-    [dartx.createSvgLength]() {
-      return this.createSVGLength();
+    [dartx.createSvgLength](...args) {
+      return this.createSVGLength.apply(this, args);
     }
-    [dartx.createSvgMatrix]() {
-      return this.createSVGMatrix();
+    [dartx.createSvgMatrix](...args) {
+      return this.createSVGMatrix.apply(this, args);
     }
-    [dartx.createSvgNumber]() {
-      return this.createSVGNumber();
+    [dartx.createSvgNumber](...args) {
+      return this.createSVGNumber.apply(this, args);
     }
-    [dartx.createSvgPoint]() {
-      return this.createSVGPoint();
+    [dartx.createSvgPoint](...args) {
+      return this.createSVGPoint.apply(this, args);
     }
-    [dartx.createSvgRect]() {
-      return this.createSVGRect();
+    [dartx.createSvgRect](...args) {
+      return this.createSVGRect.apply(this, args);
     }
-    [dartx.createSvgTransform]() {
-      return this.createSVGTransform();
+    [dartx.createSvgTransform](...args) {
+      return this.createSVGTransform.apply(this, args);
     }
-    [dartx.createSvgTransformFromMatrix](matrix) {
-      return this.createSVGTransformFromMatrix(matrix);
+    [dartx.createSvgTransformFromMatrix](...args) {
+      return this.createSVGTransformFromMatrix.apply(this, args);
     }
-    [dartx.deselectAll]() {
-      return this.deselectAll();
+    [dartx.deselectAll](...args) {
+      return this.deselectAll.apply(this, args);
     }
-    [dartx.forceRedraw]() {
-      return this.forceRedraw();
+    [dartx.forceRedraw](...args) {
+      return this.forceRedraw.apply(this, args);
     }
-    [dartx.getCurrentTime]() {
-      return this.getCurrentTime();
+    [dartx.getCurrentTime](...args) {
+      return this.getCurrentTime.apply(this, args);
     }
-    [dartx.getElementById](elementId) {
-      return this.getElementById(elementId);
+    [dartx.getElementById](...args) {
+      return this.getElementById.apply(this, args);
     }
-    [dartx.getEnclosureList](rect, referenceElement) {
-      return this.getEnclosureList(rect, referenceElement);
+    [dartx.getEnclosureList](...args) {
+      return this.getEnclosureList.apply(this, args);
     }
-    [dartx.getIntersectionList](rect, referenceElement) {
-      return this.getIntersectionList(rect, referenceElement);
+    [dartx.getIntersectionList](...args) {
+      return this.getIntersectionList.apply(this, args);
     }
-    [dartx.pauseAnimations]() {
-      return this.pauseAnimations();
+    [dartx.pauseAnimations](...args) {
+      return this.pauseAnimations.apply(this, args);
     }
-    [dartx.setCurrentTime](seconds) {
-      return this.setCurrentTime(seconds);
+    [dartx.setCurrentTime](...args) {
+      return this.setCurrentTime.apply(this, args);
     }
-    [dartx.suspendRedraw](maxWaitMilliseconds) {
-      return this.suspendRedraw(maxWaitMilliseconds);
+    [dartx.suspendRedraw](...args) {
+      return this.suspendRedraw.apply(this, args);
     }
-    [dartx.unpauseAnimations]() {
-      return this.unpauseAnimations();
+    [dartx.unpauseAnimations](...args) {
+      return this.unpauseAnimations.apply(this, args);
     }
-    [dartx.unsuspendRedraw](suspendHandleId) {
-      return this.unsuspendRedraw(suspendHandleId);
+    [dartx.unsuspendRedraw](...args) {
+      return this.unsuspendRedraw.apply(this, args);
     }
-    [dartx.unsuspendRedrawAll]() {
-      return this.unsuspendRedrawAll();
+    [dartx.unsuspendRedrawAll](...args) {
+      return this.unsuspendRedrawAll.apply(this, args);
     }
     get [dartx.preserveAspectRatio]() {
       return this.preserveAspectRatio;
@@ -90208,32 +90208,32 @@
     get [dartx.textLength]() {
       return this.textLength;
     }
-    [dartx.getCharNumAtPosition](point) {
-      return this.getCharNumAtPosition(point);
+    [dartx.getCharNumAtPosition](...args) {
+      return this.getCharNumAtPosition.apply(this, args);
     }
-    [dartx.getComputedTextLength]() {
-      return this.getComputedTextLength();
+    [dartx.getComputedTextLength](...args) {
+      return this.getComputedTextLength.apply(this, args);
     }
-    [dartx.getEndPositionOfChar](charnum) {
-      return this.getEndPositionOfChar(charnum);
+    [dartx.getEndPositionOfChar](...args) {
+      return this.getEndPositionOfChar.apply(this, args);
     }
-    [dartx.getExtentOfChar](charnum) {
-      return this.getExtentOfChar(charnum);
+    [dartx.getExtentOfChar](...args) {
+      return this.getExtentOfChar.apply(this, args);
     }
-    [dartx.getNumberOfChars]() {
-      return this.getNumberOfChars();
+    [dartx.getNumberOfChars](...args) {
+      return this.getNumberOfChars.apply(this, args);
     }
-    [dartx.getRotationOfChar](charnum) {
-      return this.getRotationOfChar(charnum);
+    [dartx.getRotationOfChar](...args) {
+      return this.getRotationOfChar.apply(this, args);
     }
-    [dartx.getStartPositionOfChar](charnum) {
-      return this.getStartPositionOfChar(charnum);
+    [dartx.getStartPositionOfChar](...args) {
+      return this.getStartPositionOfChar.apply(this, args);
     }
-    [dartx.getSubStringLength](charnum, nchars) {
-      return this.getSubStringLength(charnum, nchars);
+    [dartx.getSubStringLength](...args) {
+      return this.getSubStringLength.apply(this, args);
     }
-    [dartx.selectSubString](charnum, nchars) {
-      return this.selectSubString(charnum, nchars);
+    [dartx.selectSubString](...args) {
+      return this.selectSubString.apply(this, args);
     }
   };
   dart.defineNamedConstructor(svg$.TextContentElement, 'created');
@@ -90500,23 +90500,23 @@
     get [dartx.type]() {
       return this.type;
     }
-    [dartx.setMatrix](matrix) {
-      return this.setMatrix(matrix);
+    [dartx.setMatrix](...args) {
+      return this.setMatrix.apply(this, args);
     }
-    [dartx.setRotate](angle, cx, cy) {
-      return this.setRotate(angle, cx, cy);
+    [dartx.setRotate](...args) {
+      return this.setRotate.apply(this, args);
     }
-    [dartx.setScale](sx, sy) {
-      return this.setScale(sx, sy);
+    [dartx.setScale](...args) {
+      return this.setScale.apply(this, args);
     }
-    [dartx.setSkewX](angle) {
-      return this.setSkewX(angle);
+    [dartx.setSkewX](...args) {
+      return this.setSkewX.apply(this, args);
     }
-    [dartx.setSkewY](angle) {
-      return this.setSkewY(angle);
+    [dartx.setSkewY](...args) {
+      return this.setSkewY.apply(this, args);
     }
-    [dartx.setTranslate](tx, ty) {
-      return this.setTranslate(tx, ty);
+    [dartx.setTranslate](...args) {
+      return this.setTranslate.apply(this, args);
     }
   };
   dart.setSignature(svg$.Transform, {
@@ -90617,35 +90617,35 @@
     [dartx.elementAt](index) {
       return this[dartx._get](index);
     }
-    [__setter__$](index, newItem) {
-      return this.__setter__(index, newItem);
+    [__setter__$](...args) {
+      return this.__setter__.apply(this, args);
     }
-    [dartx.appendItem](newItem) {
-      return this.appendItem(newItem);
+    [dartx.appendItem](...args) {
+      return this.appendItem.apply(this, args);
     }
-    [dartx.clear]() {
-      return this.clear();
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.consolidate]() {
-      return this.consolidate();
+    [dartx.consolidate](...args) {
+      return this.consolidate.apply(this, args);
     }
-    [dartx.createSvgTransformFromMatrix](matrix) {
-      return this.createSVGTransformFromMatrix(matrix);
+    [dartx.createSvgTransformFromMatrix](...args) {
+      return this.createSVGTransformFromMatrix.apply(this, args);
     }
-    [dartx.getItem](index) {
-      return this.getItem(index);
+    [dartx.getItem](...args) {
+      return this.getItem.apply(this, args);
     }
-    [dartx.initialize](newItem) {
-      return this.initialize(newItem);
+    [dartx.initialize](...args) {
+      return this.initialize.apply(this, args);
     }
-    [dartx.insertItemBefore](newItem, index) {
-      return this.insertItemBefore(newItem, index);
+    [dartx.insertItemBefore](...args) {
+      return this.insertItemBefore.apply(this, args);
     }
-    [dartx.removeItem](index) {
-      return this.removeItem(index);
+    [dartx.removeItem](...args) {
+      return this.removeItem.apply(this, args);
     }
-    [dartx.replaceItem](newItem, index) {
-      return this.replaceItem(newItem, index);
+    [dartx.replaceItem](...args) {
+      return this.replaceItem.apply(this, args);
     }
   };
   svg$.TransformList[dart.implements] = () => [ListOfTransform()];
@@ -91053,11 +91053,11 @@
     get [dartx.numberOfOutputs]() {
       return this.numberOfOutputs;
     }
-    [_connect](destination, output, input) {
-      return this.connect(destination, output, input);
+    [_connect](...args) {
+      return this.connect.apply(this, args);
     }
-    [dartx.disconnect](output) {
-      return this.disconnect(output);
+    [dartx.disconnect](...args) {
+      return this.disconnect.apply(this, args);
     }
     [dartx.connectNode](destination, output, input) {
       if (output === void 0) output = 0;
@@ -91129,17 +91129,17 @@
     set [dartx.smoothingTimeConstant](value) {
       this.smoothingTimeConstant = value;
     }
-    [dartx.getByteFrequencyData](array) {
-      return this.getByteFrequencyData(array);
+    [dartx.getByteFrequencyData](...args) {
+      return this.getByteFrequencyData.apply(this, args);
     }
-    [dartx.getByteTimeDomainData](array) {
-      return this.getByteTimeDomainData(array);
+    [dartx.getByteTimeDomainData](...args) {
+      return this.getByteTimeDomainData.apply(this, args);
     }
-    [dartx.getFloatFrequencyData](array) {
-      return this.getFloatFrequencyData(array);
+    [dartx.getFloatFrequencyData](...args) {
+      return this.getFloatFrequencyData.apply(this, args);
     }
-    [dartx.getFloatTimeDomainData](array) {
-      return this.getFloatTimeDomainData(array);
+    [dartx.getFloatTimeDomainData](...args) {
+      return this.getFloatTimeDomainData.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AnalyserNode, {
@@ -91183,8 +91183,8 @@
     get [dartx.sampleRate]() {
       return this.sampleRate;
     }
-    [dartx.getChannelData](channelIndex) {
-      return this.getChannelData(channelIndex);
+    [dartx.getChannelData](...args) {
+      return this.getChannelData.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioBuffer, {
@@ -91346,59 +91346,59 @@
     get [dartx.sampleRate]() {
       return this.sampleRate;
     }
-    [dartx.createAnalyser]() {
-      return this.createAnalyser();
+    [dartx.createAnalyser](...args) {
+      return this.createAnalyser.apply(this, args);
     }
-    [dartx.createBiquadFilter]() {
-      return this.createBiquadFilter();
+    [dartx.createBiquadFilter](...args) {
+      return this.createBiquadFilter.apply(this, args);
     }
-    [dartx.createBuffer](numberOfChannels, numberOfFrames, sampleRate) {
-      return this.createBuffer(numberOfChannels, numberOfFrames, sampleRate);
+    [dartx.createBuffer](...args) {
+      return this.createBuffer.apply(this, args);
     }
-    [dartx.createBufferSource]() {
-      return this.createBufferSource();
+    [dartx.createBufferSource](...args) {
+      return this.createBufferSource.apply(this, args);
     }
-    [dartx.createChannelMerger](numberOfInputs) {
-      return this.createChannelMerger(numberOfInputs);
+    [dartx.createChannelMerger](...args) {
+      return this.createChannelMerger.apply(this, args);
     }
-    [dartx.createChannelSplitter](numberOfOutputs) {
-      return this.createChannelSplitter(numberOfOutputs);
+    [dartx.createChannelSplitter](...args) {
+      return this.createChannelSplitter.apply(this, args);
     }
-    [dartx.createConvolver]() {
-      return this.createConvolver();
+    [dartx.createConvolver](...args) {
+      return this.createConvolver.apply(this, args);
     }
-    [dartx.createDelay](maxDelayTime) {
-      return this.createDelay(maxDelayTime);
+    [dartx.createDelay](...args) {
+      return this.createDelay.apply(this, args);
     }
-    [dartx.createDynamicsCompressor]() {
-      return this.createDynamicsCompressor();
+    [dartx.createDynamicsCompressor](...args) {
+      return this.createDynamicsCompressor.apply(this, args);
     }
-    [dartx.createMediaElementSource](mediaElement) {
-      return this.createMediaElementSource(mediaElement);
+    [dartx.createMediaElementSource](...args) {
+      return this.createMediaElementSource.apply(this, args);
     }
-    [dartx.createMediaStreamDestination]() {
-      return this.createMediaStreamDestination();
+    [dartx.createMediaStreamDestination](...args) {
+      return this.createMediaStreamDestination.apply(this, args);
     }
-    [dartx.createMediaStreamSource](mediaStream) {
-      return this.createMediaStreamSource(mediaStream);
+    [dartx.createMediaStreamSource](...args) {
+      return this.createMediaStreamSource.apply(this, args);
     }
-    [dartx.createOscillator]() {
-      return this.createOscillator();
+    [dartx.createOscillator](...args) {
+      return this.createOscillator.apply(this, args);
     }
-    [dartx.createPanner]() {
-      return this.createPanner();
+    [dartx.createPanner](...args) {
+      return this.createPanner.apply(this, args);
     }
-    [dartx.createPeriodicWave](real, imag) {
-      return this.createPeriodicWave(real, imag);
+    [dartx.createPeriodicWave](...args) {
+      return this.createPeriodicWave.apply(this, args);
     }
-    [dartx.createWaveShaper]() {
-      return this.createWaveShaper();
+    [dartx.createWaveShaper](...args) {
+      return this.createWaveShaper.apply(this, args);
     }
-    [_decodeAudioData](audioData, successCallback, errorCallback) {
-      return this.decodeAudioData(audioData, successCallback, errorCallback);
+    [_decodeAudioData](...args) {
+      return this.decodeAudioData.apply(this, args);
     }
-    [dartx.startRendering]() {
-      return this.startRendering();
+    [dartx.startRendering](...args) {
+      return this.startRendering.apply(this, args);
     }
     get [dartx.onComplete]() {
       return web_audio.AudioContext.completeEvent.forTarget(this);
@@ -91519,14 +91519,14 @@
     set [dartx.speedOfSound](value) {
       this.speedOfSound = value;
     }
-    [dartx.setOrientation](x, y, z, xUp, yUp, zUp) {
-      return this.setOrientation(x, y, z, xUp, yUp, zUp);
+    [dartx.setOrientation](...args) {
+      return this.setOrientation.apply(this, args);
     }
-    [dartx.setPosition](x, y, z) {
-      return this.setPosition(x, y, z);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
-    [dartx.setVelocity](x, y, z) {
-      return this.setVelocity(x, y, z);
+    [dartx.setVelocity](...args) {
+      return this.setVelocity.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioListener, {
@@ -91565,23 +91565,23 @@
     set [dartx.value](value) {
       this.value = value;
     }
-    [dartx.cancelScheduledValues](startTime) {
-      return this.cancelScheduledValues(startTime);
+    [dartx.cancelScheduledValues](...args) {
+      return this.cancelScheduledValues.apply(this, args);
     }
-    [dartx.exponentialRampToValueAtTime](value, time) {
-      return this.exponentialRampToValueAtTime(value, time);
+    [dartx.exponentialRampToValueAtTime](...args) {
+      return this.exponentialRampToValueAtTime.apply(this, args);
     }
-    [dartx.linearRampToValueAtTime](value, time) {
-      return this.linearRampToValueAtTime(value, time);
+    [dartx.linearRampToValueAtTime](...args) {
+      return this.linearRampToValueAtTime.apply(this, args);
     }
-    [dartx.setTargetAtTime](target, time, timeConstant) {
-      return this.setTargetAtTime(target, time, timeConstant);
+    [dartx.setTargetAtTime](...args) {
+      return this.setTargetAtTime.apply(this, args);
     }
-    [dartx.setValueAtTime](value, time) {
-      return this.setValueAtTime(value, time);
+    [dartx.setValueAtTime](...args) {
+      return this.setValueAtTime.apply(this, args);
     }
-    [dartx.setValueCurveAtTime](values, time, duration) {
-      return this.setValueCurveAtTime(values, time, duration);
+    [dartx.setValueCurveAtTime](...args) {
+      return this.setValueCurveAtTime.apply(this, args);
     }
   };
   dart.setSignature(web_audio.AudioParam, {
@@ -91658,8 +91658,8 @@
     set [dartx.type](value) {
       this.type = value;
     }
-    [dartx.getFrequencyResponse](frequencyHz, magResponse, phaseResponse) {
-      return this.getFrequencyResponse(frequencyHz, magResponse, phaseResponse);
+    [dartx.getFrequencyResponse](...args) {
+      return this.getFrequencyResponse.apply(this, args);
     }
   };
   dart.setSignature(web_audio.BiquadFilterNode, {
@@ -91910,20 +91910,20 @@
     set [dartx.type](value) {
       this.type = value;
     }
-    [dartx.noteOff](when) {
-      return this.noteOff(when);
+    [dartx.noteOff](...args) {
+      return this.noteOff.apply(this, args);
     }
-    [dartx.noteOn](when) {
-      return this.noteOn(when);
+    [dartx.noteOn](...args) {
+      return this.noteOn.apply(this, args);
     }
-    [dartx.setPeriodicWave](periodicWave) {
-      return this.setPeriodicWave(periodicWave);
+    [dartx.setPeriodicWave](...args) {
+      return this.setPeriodicWave.apply(this, args);
     }
-    [dartx.start](when) {
-      return this.start(when);
+    [dartx.start](...args) {
+      return this.start.apply(this, args);
     }
-    [dartx.stop](when) {
-      return this.stop(when);
+    [dartx.stop](...args) {
+      return this.stop.apply(this, args);
     }
     get [dartx.onEnded]() {
       return web_audio.OscillatorNode.endedEvent.forTarget(this);
@@ -92014,14 +92014,14 @@
     set [dartx.rolloffFactor](value) {
       this.rolloffFactor = value;
     }
-    [dartx.setOrientation](x, y, z) {
-      return this.setOrientation(x, y, z);
+    [dartx.setOrientation](...args) {
+      return this.setOrientation.apply(this, args);
     }
-    [dartx.setPosition](x, y, z) {
-      return this.setPosition(x, y, z);
+    [dartx.setPosition](...args) {
+      return this.setPosition.apply(this, args);
     }
-    [dartx.setVelocity](x, y, z) {
-      return this.setVelocity(x, y, z);
+    [dartx.setVelocity](...args) {
+      return this.setVelocity.apply(this, args);
     }
   };
   dart.setSignature(web_audio.PannerNode, {
@@ -92066,8 +92066,8 @@
     get [dartx.bufferSize]() {
       return this.bufferSize;
     }
-    [dartx.setEventListener](eventListener) {
-      return this.setEventListener(eventListener);
+    [dartx.setEventListener](...args) {
+      return this.setEventListener.apply(this, args);
     }
     get [dartx.onAudioProcess]() {
       return web_audio.ScriptProcessorNode.audioProcessEvent.forTarget(this);
@@ -92298,323 +92298,323 @@
     get [dartx.drawingBufferWidth]() {
       return this.drawingBufferWidth;
     }
-    [dartx.activeTexture](texture) {
-      return this.activeTexture(texture);
+    [dartx.activeTexture](...args) {
+      return this.activeTexture.apply(this, args);
     }
-    [dartx.attachShader](program, shader) {
-      return this.attachShader(program, shader);
+    [dartx.attachShader](...args) {
+      return this.attachShader.apply(this, args);
     }
-    [dartx.bindAttribLocation](program, index, name) {
-      return this.bindAttribLocation(program, index, name);
+    [dartx.bindAttribLocation](...args) {
+      return this.bindAttribLocation.apply(this, args);
     }
-    [dartx.bindBuffer](target, buffer) {
-      return this.bindBuffer(target, buffer);
+    [dartx.bindBuffer](...args) {
+      return this.bindBuffer.apply(this, args);
     }
-    [dartx.bindFramebuffer](target, framebuffer) {
-      return this.bindFramebuffer(target, framebuffer);
+    [dartx.bindFramebuffer](...args) {
+      return this.bindFramebuffer.apply(this, args);
     }
-    [dartx.bindRenderbuffer](target, renderbuffer) {
-      return this.bindRenderbuffer(target, renderbuffer);
+    [dartx.bindRenderbuffer](...args) {
+      return this.bindRenderbuffer.apply(this, args);
     }
-    [dartx.bindTexture](target, texture) {
-      return this.bindTexture(target, texture);
+    [dartx.bindTexture](...args) {
+      return this.bindTexture.apply(this, args);
     }
-    [dartx.blendColor](red, green, blue, alpha) {
-      return this.blendColor(red, green, blue, alpha);
+    [dartx.blendColor](...args) {
+      return this.blendColor.apply(this, args);
     }
-    [dartx.blendEquation](mode) {
-      return this.blendEquation(mode);
+    [dartx.blendEquation](...args) {
+      return this.blendEquation.apply(this, args);
     }
-    [dartx.blendEquationSeparate](modeRGB, modeAlpha) {
-      return this.blendEquationSeparate(modeRGB, modeAlpha);
+    [dartx.blendEquationSeparate](...args) {
+      return this.blendEquationSeparate.apply(this, args);
     }
-    [dartx.blendFunc](sfactor, dfactor) {
-      return this.blendFunc(sfactor, dfactor);
+    [dartx.blendFunc](...args) {
+      return this.blendFunc.apply(this, args);
     }
-    [dartx.blendFuncSeparate](srcRGB, dstRGB, srcAlpha, dstAlpha) {
-      return this.blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
+    [dartx.blendFuncSeparate](...args) {
+      return this.blendFuncSeparate.apply(this, args);
     }
-    [dartx.bufferByteData](target, data, usage) {
-      return this.bufferData(target, data, usage);
+    [dartx.bufferByteData](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferData](target, data_OR_size, usage) {
-      return this.bufferData(target, data_OR_size, usage);
+    [dartx.bufferData](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferDataTyped](target, data, usage) {
-      return this.bufferData(target, data, usage);
+    [dartx.bufferDataTyped](...args) {
+      return this.bufferData.apply(this, args);
     }
-    [dartx.bufferSubByteData](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubByteData](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.bufferSubData](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubData](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.bufferSubDataTyped](target, offset, data) {
-      return this.bufferSubData(target, offset, data);
+    [dartx.bufferSubDataTyped](...args) {
+      return this.bufferSubData.apply(this, args);
     }
-    [dartx.checkFramebufferStatus](target) {
-      return this.checkFramebufferStatus(target);
+    [dartx.checkFramebufferStatus](...args) {
+      return this.checkFramebufferStatus.apply(this, args);
     }
-    [dartx.clear](mask) {
-      return this.clear(mask);
+    [dartx.clear](...args) {
+      return this.clear.apply(this, args);
     }
-    [dartx.clearColor](red, green, blue, alpha) {
-      return this.clearColor(red, green, blue, alpha);
+    [dartx.clearColor](...args) {
+      return this.clearColor.apply(this, args);
     }
-    [dartx.clearDepth](depth) {
-      return this.clearDepth(depth);
+    [dartx.clearDepth](...args) {
+      return this.clearDepth.apply(this, args);
     }
-    [dartx.clearStencil](s) {
-      return this.clearStencil(s);
+    [dartx.clearStencil](...args) {
+      return this.clearStencil.apply(this, args);
     }
-    [dartx.colorMask](red, green, blue, alpha) {
-      return this.colorMask(red, green, blue, alpha);
+    [dartx.colorMask](...args) {
+      return this.colorMask.apply(this, args);
     }
-    [dartx.compileShader](shader) {
-      return this.compileShader(shader);
+    [dartx.compileShader](...args) {
+      return this.compileShader.apply(this, args);
     }
-    [dartx.compressedTexImage2D](target, level, internalformat, width, height, border, data) {
-      return this.compressedTexImage2D(target, level, internalformat, width, height, border, data);
+    [dartx.compressedTexImage2D](...args) {
+      return this.compressedTexImage2D.apply(this, args);
     }
-    [dartx.compressedTexSubImage2D](target, level, xoffset, yoffset, width, height, format, data) {
-      return this.compressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, data);
+    [dartx.compressedTexSubImage2D](...args) {
+      return this.compressedTexSubImage2D.apply(this, args);
     }
-    [dartx.copyTexImage2D](target, level, internalformat, x, y, width, height, border) {
-      return this.copyTexImage2D(target, level, internalformat, x, y, width, height, border);
+    [dartx.copyTexImage2D](...args) {
+      return this.copyTexImage2D.apply(this, args);
     }
-    [dartx.copyTexSubImage2D](target, level, xoffset, yoffset, x, y, width, height) {
-      return this.copyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+    [dartx.copyTexSubImage2D](...args) {
+      return this.copyTexSubImage2D.apply(this, args);
     }
-    [dartx.createBuffer]() {
-      return this.createBuffer();
+    [dartx.createBuffer](...args) {
+      return this.createBuffer.apply(this, args);
     }
-    [dartx.createFramebuffer]() {
-      return this.createFramebuffer();
+    [dartx.createFramebuffer](...args) {
+      return this.createFramebuffer.apply(this, args);
     }
-    [dartx.createProgram]() {
-      return this.createProgram();
+    [dartx.createProgram](...args) {
+      return this.createProgram.apply(this, args);
     }
-    [dartx.createRenderbuffer]() {
-      return this.createRenderbuffer();
+    [dartx.createRenderbuffer](...args) {
+      return this.createRenderbuffer.apply(this, args);
     }
-    [dartx.createShader](type) {
-      return this.createShader(type);
+    [dartx.createShader](...args) {
+      return this.createShader.apply(this, args);
     }
-    [dartx.createTexture]() {
-      return this.createTexture();
+    [dartx.createTexture](...args) {
+      return this.createTexture.apply(this, args);
     }
-    [dartx.cullFace](mode) {
-      return this.cullFace(mode);
+    [dartx.cullFace](...args) {
+      return this.cullFace.apply(this, args);
     }
-    [dartx.deleteBuffer](buffer) {
-      return this.deleteBuffer(buffer);
+    [dartx.deleteBuffer](...args) {
+      return this.deleteBuffer.apply(this, args);
     }
-    [dartx.deleteFramebuffer](framebuffer) {
-      return this.deleteFramebuffer(framebuffer);
+    [dartx.deleteFramebuffer](...args) {
+      return this.deleteFramebuffer.apply(this, args);
     }
-    [dartx.deleteProgram](program) {
-      return this.deleteProgram(program);
+    [dartx.deleteProgram](...args) {
+      return this.deleteProgram.apply(this, args);
     }
-    [dartx.deleteRenderbuffer](renderbuffer) {
-      return this.deleteRenderbuffer(renderbuffer);
+    [dartx.deleteRenderbuffer](...args) {
+      return this.deleteRenderbuffer.apply(this, args);
     }
-    [dartx.deleteShader](shader) {
-      return this.deleteShader(shader);
+    [dartx.deleteShader](...args) {
+      return this.deleteShader.apply(this, args);
     }
-    [dartx.deleteTexture](texture) {
-      return this.deleteTexture(texture);
+    [dartx.deleteTexture](...args) {
+      return this.deleteTexture.apply(this, args);
     }
-    [dartx.depthFunc](func) {
-      return this.depthFunc(func);
+    [dartx.depthFunc](...args) {
+      return this.depthFunc.apply(this, args);
     }
-    [dartx.depthMask](flag) {
-      return this.depthMask(flag);
+    [dartx.depthMask](...args) {
+      return this.depthMask.apply(this, args);
     }
-    [dartx.depthRange](zNear, zFar) {
-      return this.depthRange(zNear, zFar);
+    [dartx.depthRange](...args) {
+      return this.depthRange.apply(this, args);
     }
-    [dartx.detachShader](program, shader) {
-      return this.detachShader(program, shader);
+    [dartx.detachShader](...args) {
+      return this.detachShader.apply(this, args);
     }
-    [dartx.disable](cap) {
-      return this.disable(cap);
+    [dartx.disable](...args) {
+      return this.disable.apply(this, args);
     }
-    [dartx.disableVertexAttribArray](index) {
-      return this.disableVertexAttribArray(index);
+    [dartx.disableVertexAttribArray](...args) {
+      return this.disableVertexAttribArray.apply(this, args);
     }
-    [dartx.drawArrays](mode, first, count) {
-      return this.drawArrays(mode, first, count);
+    [dartx.drawArrays](...args) {
+      return this.drawArrays.apply(this, args);
     }
-    [dartx.drawElements](mode, count, type, offset) {
-      return this.drawElements(mode, count, type, offset);
+    [dartx.drawElements](...args) {
+      return this.drawElements.apply(this, args);
     }
-    [dartx.enable](cap) {
-      return this.enable(cap);
+    [dartx.enable](...args) {
+      return this.enable.apply(this, args);
     }
-    [dartx.enableVertexAttribArray](index) {
-      return this.enableVertexAttribArray(index);
+    [dartx.enableVertexAttribArray](...args) {
+      return this.enableVertexAttribArray.apply(this, args);
     }
-    [dartx.finish]() {
-      return this.finish();
+    [dartx.finish](...args) {
+      return this.finish.apply(this, args);
     }
-    [dartx.flush]() {
-      return this.flush();
+    [dartx.flush](...args) {
+      return this.flush.apply(this, args);
     }
-    [dartx.framebufferRenderbuffer](target, attachment, renderbuffertarget, renderbuffer) {
-      return this.framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+    [dartx.framebufferRenderbuffer](...args) {
+      return this.framebufferRenderbuffer.apply(this, args);
     }
-    [dartx.framebufferTexture2D](target, attachment, textarget, texture, level) {
-      return this.framebufferTexture2D(target, attachment, textarget, texture, level);
+    [dartx.framebufferTexture2D](...args) {
+      return this.framebufferTexture2D.apply(this, args);
     }
-    [dartx.frontFace](mode) {
-      return this.frontFace(mode);
+    [dartx.frontFace](...args) {
+      return this.frontFace.apply(this, args);
     }
-    [dartx.generateMipmap](target) {
-      return this.generateMipmap(target);
+    [dartx.generateMipmap](...args) {
+      return this.generateMipmap.apply(this, args);
     }
-    [dartx.getActiveAttrib](program, index) {
-      return this.getActiveAttrib(program, index);
+    [dartx.getActiveAttrib](...args) {
+      return this.getActiveAttrib.apply(this, args);
     }
-    [dartx.getActiveUniform](program, index) {
-      return this.getActiveUniform(program, index);
+    [dartx.getActiveUniform](...args) {
+      return this.getActiveUniform.apply(this, args);
     }
-    [dartx.getAttachedShaders](program) {
-      return this.getAttachedShaders(program);
+    [dartx.getAttachedShaders](...args) {
+      return this.getAttachedShaders.apply(this, args);
     }
-    [dartx.getAttribLocation](program, name) {
-      return this.getAttribLocation(program, name);
+    [dartx.getAttribLocation](...args) {
+      return this.getAttribLocation.apply(this, args);
     }
-    [dartx.getBufferParameter](target, pname) {
-      return this.getBufferParameter(target, pname);
+    [dartx.getBufferParameter](...args) {
+      return this.getBufferParameter.apply(this, args);
     }
     [dartx.getContextAttributes]() {
       return web_gl.ContextAttributes._check(html_common.convertNativeToDart_ContextAttributes(this[_getContextAttributes_1$]()));
     }
-    [_getContextAttributes_1$]() {
-      return this.getContextAttributes();
+    [_getContextAttributes_1$](...args) {
+      return this.getContextAttributes.apply(this, args);
     }
-    [dartx.getError]() {
-      return this.getError();
+    [dartx.getError](...args) {
+      return this.getError.apply(this, args);
     }
-    [dartx.getExtension](name) {
-      return this.getExtension(name);
+    [dartx.getExtension](...args) {
+      return this.getExtension.apply(this, args);
     }
-    [dartx.getFramebufferAttachmentParameter](target, attachment, pname) {
-      return this.getFramebufferAttachmentParameter(target, attachment, pname);
+    [dartx.getFramebufferAttachmentParameter](...args) {
+      return this.getFramebufferAttachmentParameter.apply(this, args);
     }
-    [dartx.getParameter](pname) {
-      return this.getParameter(pname);
+    [dartx.getParameter](...args) {
+      return this.getParameter.apply(this, args);
     }
-    [dartx.getProgramInfoLog](program) {
-      return this.getProgramInfoLog(program);
+    [dartx.getProgramInfoLog](...args) {
+      return this.getProgramInfoLog.apply(this, args);
     }
-    [dartx.getProgramParameter](program, pname) {
-      return this.getProgramParameter(program, pname);
+    [dartx.getProgramParameter](...args) {
+      return this.getProgramParameter.apply(this, args);
     }
-    [dartx.getRenderbufferParameter](target, pname) {
-      return this.getRenderbufferParameter(target, pname);
+    [dartx.getRenderbufferParameter](...args) {
+      return this.getRenderbufferParameter.apply(this, args);
     }
-    [dartx.getShaderInfoLog](shader) {
-      return this.getShaderInfoLog(shader);
+    [dartx.getShaderInfoLog](...args) {
+      return this.getShaderInfoLog.apply(this, args);
     }
-    [dartx.getShaderParameter](shader, pname) {
-      return this.getShaderParameter(shader, pname);
+    [dartx.getShaderParameter](...args) {
+      return this.getShaderParameter.apply(this, args);
     }
-    [dartx.getShaderPrecisionFormat](shadertype, precisiontype) {
-      return this.getShaderPrecisionFormat(shadertype, precisiontype);
+    [dartx.getShaderPrecisionFormat](...args) {
+      return this.getShaderPrecisionFormat.apply(this, args);
     }
-    [dartx.getShaderSource](shader) {
-      return this.getShaderSource(shader);
+    [dartx.getShaderSource](...args) {
+      return this.getShaderSource.apply(this, args);
     }
-    [dartx.getSupportedExtensions]() {
-      return this.getSupportedExtensions();
+    [dartx.getSupportedExtensions](...args) {
+      return this.getSupportedExtensions.apply(this, args);
     }
-    [dartx.getTexParameter](target, pname) {
-      return this.getTexParameter(target, pname);
+    [dartx.getTexParameter](...args) {
+      return this.getTexParameter.apply(this, args);
     }
-    [dartx.getUniform](program, location) {
-      return this.getUniform(program, location);
+    [dartx.getUniform](...args) {
+      return this.getUniform.apply(this, args);
     }
-    [dartx.getUniformLocation](program, name) {
-      return this.getUniformLocation(program, name);
+    [dartx.getUniformLocation](...args) {
+      return this.getUniformLocation.apply(this, args);
     }
-    [dartx.getVertexAttrib](index, pname) {
-      return this.getVertexAttrib(index, pname);
+    [dartx.getVertexAttrib](...args) {
+      return this.getVertexAttrib.apply(this, args);
     }
-    [dartx.getVertexAttribOffset](index, pname) {
-      return this.getVertexAttribOffset(index, pname);
+    [dartx.getVertexAttribOffset](...args) {
+      return this.getVertexAttribOffset.apply(this, args);
     }
-    [dartx.hint](target, mode) {
-      return this.hint(target, mode);
+    [dartx.hint](...args) {
+      return this.hint.apply(this, args);
     }
-    [dartx.isBuffer](buffer) {
-      return this.isBuffer(buffer);
+    [dartx.isBuffer](...args) {
+      return this.isBuffer.apply(this, args);
     }
-    [dartx.isContextLost]() {
-      return this.isContextLost();
+    [dartx.isContextLost](...args) {
+      return this.isContextLost.apply(this, args);
     }
-    [dartx.isEnabled](cap) {
-      return this.isEnabled(cap);
+    [dartx.isEnabled](...args) {
+      return this.isEnabled.apply(this, args);
     }
-    [dartx.isFramebuffer](framebuffer) {
-      return this.isFramebuffer(framebuffer);
+    [dartx.isFramebuffer](...args) {
+      return this.isFramebuffer.apply(this, args);
     }
-    [dartx.isProgram](program) {
-      return this.isProgram(program);
+    [dartx.isProgram](...args) {
+      return this.isProgram.apply(this, args);
     }
-    [dartx.isRenderbuffer](renderbuffer) {
-      return this.isRenderbuffer(renderbuffer);
+    [dartx.isRenderbuffer](...args) {
+      return this.isRenderbuffer.apply(this, args);
     }
-    [dartx.isShader](shader) {
-      return this.isShader(shader);
+    [dartx.isShader](...args) {
+      return this.isShader.apply(this, args);
     }
-    [dartx.isTexture](texture) {
-      return this.isTexture(texture);
+    [dartx.isTexture](...args) {
+      return this.isTexture.apply(this, args);
     }
-    [dartx.lineWidth](width) {
-      return this.lineWidth(width);
+    [dartx.lineWidth](...args) {
+      return this.lineWidth.apply(this, args);
     }
-    [dartx.linkProgram](program) {
-      return this.linkProgram(program);
+    [dartx.linkProgram](...args) {
+      return this.linkProgram.apply(this, args);
     }
-    [dartx.pixelStorei](pname, param) {
-      return this.pixelStorei(pname, param);
+    [dartx.pixelStorei](...args) {
+      return this.pixelStorei.apply(this, args);
     }
-    [dartx.polygonOffset](factor, units) {
-      return this.polygonOffset(factor, units);
+    [dartx.polygonOffset](...args) {
+      return this.polygonOffset.apply(this, args);
     }
-    [dartx.readPixels](x, y, width, height, format, type, pixels) {
-      return this.readPixels(x, y, width, height, format, type, pixels);
+    [dartx.readPixels](...args) {
+      return this.readPixels.apply(this, args);
     }
-    [dartx.renderbufferStorage](target, internalformat, width, height) {
-      return this.renderbufferStorage(target, internalformat, width, height);
+    [dartx.renderbufferStorage](...args) {
+      return this.renderbufferStorage.apply(this, args);
     }
-    [dartx.sampleCoverage](value, invert) {
-      return this.sampleCoverage(value, invert);
+    [dartx.sampleCoverage](...args) {
+      return this.sampleCoverage.apply(this, args);
     }
-    [dartx.scissor](x, y, width, height) {
-      return this.scissor(x, y, width, height);
+    [dartx.scissor](...args) {
+      return this.scissor.apply(this, args);
     }
-    [dartx.shaderSource](shader, string) {
-      return this.shaderSource(shader, string);
+    [dartx.shaderSource](...args) {
+      return this.shaderSource.apply(this, args);
     }
-    [dartx.stencilFunc](func, ref, mask) {
-      return this.stencilFunc(func, ref, mask);
+    [dartx.stencilFunc](...args) {
+      return this.stencilFunc.apply(this, args);
     }
-    [dartx.stencilFuncSeparate](face, func, ref, mask) {
-      return this.stencilFuncSeparate(face, func, ref, mask);
+    [dartx.stencilFuncSeparate](...args) {
+      return this.stencilFuncSeparate.apply(this, args);
     }
-    [dartx.stencilMask](mask) {
-      return this.stencilMask(mask);
+    [dartx.stencilMask](...args) {
+      return this.stencilMask.apply(this, args);
     }
-    [dartx.stencilMaskSeparate](face, mask) {
-      return this.stencilMaskSeparate(face, mask);
+    [dartx.stencilMaskSeparate](...args) {
+      return this.stencilMaskSeparate.apply(this, args);
     }
-    [dartx.stencilOp](fail, zfail, zpass) {
-      return this.stencilOp(fail, zfail, zpass);
+    [dartx.stencilOp](...args) {
+      return this.stencilOp.apply(this, args);
     }
-    [dartx.stencilOpSeparate](face, fail, zfail, zpass) {
-      return this.stencilOpSeparate(face, fail, zfail, zpass);
+    [dartx.stencilOpSeparate](...args) {
+      return this.stencilOpSeparate.apply(this, args);
     }
     [dartx.texImage2D](target, level, internalformat, format_OR_width, height_OR_type, border_OR_canvas_OR_image_OR_pixels_OR_video, format, type, pixels) {
       if (format === void 0) format = null;
@@ -92643,43 +92643,43 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_texImage2D_1](target, level, internalformat, width, height, border, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+    [_texImage2D_1](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_2](target, level, internalformat, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, format, type, pixels);
+    [_texImage2D_2](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_3](target, level, internalformat, format, type, image) {
-      return this.texImage2D(target, level, internalformat, format, type, image);
+    [_texImage2D_3](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_4](target, level, internalformat, format, type, canvas) {
-      return this.texImage2D(target, level, internalformat, format, type, canvas);
+    [_texImage2D_4](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [_texImage2D_5](target, level, internalformat, format, type, video) {
-      return this.texImage2D(target, level, internalformat, format, type, video);
+    [_texImage2D_5](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DCanvas](target, level, internalformat, format, type, canvas) {
-      return this.texImage2D(target, level, internalformat, format, type, canvas);
+    [dartx.texImage2DCanvas](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DImage](target, level, internalformat, format, type, image) {
-      return this.texImage2D(target, level, internalformat, format, type, image);
+    [dartx.texImage2DImage](...args) {
+      return this.texImage2D.apply(this, args);
     }
     [dartx.texImage2DImageData](target, level, internalformat, format, type, pixels) {
       let pixels_1 = html_common.convertDartToNative_ImageData(pixels);
       this[_texImage2DImageData_1](target, level, internalformat, format, type, pixels_1);
       return;
     }
-    [_texImage2DImageData_1](target, level, internalformat, format, type, pixels) {
-      return this.texImage2D(target, level, internalformat, format, type, pixels);
+    [_texImage2DImageData_1](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DVideo](target, level, internalformat, format, type, video) {
-      return this.texImage2D(target, level, internalformat, format, type, video);
+    [dartx.texImage2DVideo](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texParameterf](target, pname, param) {
-      return this.texParameterf(target, pname, param);
+    [dartx.texParameterf](...args) {
+      return this.texParameterf.apply(this, args);
     }
-    [dartx.texParameteri](target, pname, param) {
-      return this.texParameteri(target, pname, param);
+    [dartx.texParameteri](...args) {
+      return this.texParameteri.apply(this, args);
     }
     [dartx.texSubImage2D](target, level, xoffset, yoffset, format_OR_width, height_OR_type, canvas_OR_format_OR_image_OR_pixels_OR_video, type, pixels) {
       if (type === void 0) type = null;
@@ -92707,142 +92707,142 @@
       }
       dart.throw(new core.ArgumentError("Incorrect number or type of arguments"));
     }
-    [_texSubImage2D_1](target, level, xoffset, yoffset, width, height, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+    [_texSubImage2D_1](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_2](target, level, xoffset, yoffset, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, pixels);
+    [_texSubImage2D_2](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_3](target, level, xoffset, yoffset, format, type, image) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, image);
+    [_texSubImage2D_3](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_4](target, level, xoffset, yoffset, format, type, canvas) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, canvas);
+    [_texSubImage2D_4](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [_texSubImage2D_5](target, level, xoffset, yoffset, format, type, video) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, video);
+    [_texSubImage2D_5](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DCanvas](target, level, xoffset, yoffset, format, type, canvas) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, canvas);
+    [dartx.texSubImage2DCanvas](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DImage](target, level, xoffset, yoffset, format, type, image) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, image);
+    [dartx.texSubImage2DImage](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
     [dartx.texSubImage2DImageData](target, level, xoffset, yoffset, format, type, pixels) {
       let pixels_1 = html_common.convertDartToNative_ImageData(pixels);
       this[_texSubImage2DImageData_1](target, level, xoffset, yoffset, format, type, pixels_1);
       return;
     }
-    [_texSubImage2DImageData_1](target, level, xoffset, yoffset, format, type, pixels) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, pixels);
+    [_texSubImage2DImageData_1](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DVideo](target, level, xoffset, yoffset, format, type, video) {
-      return this.texSubImage2D(target, level, xoffset, yoffset, format, type, video);
+    [dartx.texSubImage2DVideo](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.uniform1f](location, x) {
-      return this.uniform1f(location, x);
+    [dartx.uniform1f](...args) {
+      return this.uniform1f.apply(this, args);
     }
-    [dartx.uniform1fv](location, v) {
-      return this.uniform1fv(location, v);
+    [dartx.uniform1fv](...args) {
+      return this.uniform1fv.apply(this, args);
     }
-    [dartx.uniform1i](location, x) {
-      return this.uniform1i(location, x);
+    [dartx.uniform1i](...args) {
+      return this.uniform1i.apply(this, args);
     }
-    [dartx.uniform1iv](location, v) {
-      return this.uniform1iv(location, v);
+    [dartx.uniform1iv](...args) {
+      return this.uniform1iv.apply(this, args);
     }
-    [dartx.uniform2f](location, x, y) {
-      return this.uniform2f(location, x, y);
+    [dartx.uniform2f](...args) {
+      return this.uniform2f.apply(this, args);
     }
-    [dartx.uniform2fv](location, v) {
-      return this.uniform2fv(location, v);
+    [dartx.uniform2fv](...args) {
+      return this.uniform2fv.apply(this, args);
     }
-    [dartx.uniform2i](location, x, y) {
-      return this.uniform2i(location, x, y);
+    [dartx.uniform2i](...args) {
+      return this.uniform2i.apply(this, args);
     }
-    [dartx.uniform2iv](location, v) {
-      return this.uniform2iv(location, v);
+    [dartx.uniform2iv](...args) {
+      return this.uniform2iv.apply(this, args);
     }
-    [dartx.uniform3f](location, x, y, z) {
-      return this.uniform3f(location, x, y, z);
+    [dartx.uniform3f](...args) {
+      return this.uniform3f.apply(this, args);
     }
-    [dartx.uniform3fv](location, v) {
-      return this.uniform3fv(location, v);
+    [dartx.uniform3fv](...args) {
+      return this.uniform3fv.apply(this, args);
     }
-    [dartx.uniform3i](location, x, y, z) {
-      return this.uniform3i(location, x, y, z);
+    [dartx.uniform3i](...args) {
+      return this.uniform3i.apply(this, args);
     }
-    [dartx.uniform3iv](location, v) {
-      return this.uniform3iv(location, v);
+    [dartx.uniform3iv](...args) {
+      return this.uniform3iv.apply(this, args);
     }
-    [dartx.uniform4f](location, x, y, z, w) {
-      return this.uniform4f(location, x, y, z, w);
+    [dartx.uniform4f](...args) {
+      return this.uniform4f.apply(this, args);
     }
-    [dartx.uniform4fv](location, v) {
-      return this.uniform4fv(location, v);
+    [dartx.uniform4fv](...args) {
+      return this.uniform4fv.apply(this, args);
     }
-    [dartx.uniform4i](location, x, y, z, w) {
-      return this.uniform4i(location, x, y, z, w);
+    [dartx.uniform4i](...args) {
+      return this.uniform4i.apply(this, args);
     }
-    [dartx.uniform4iv](location, v) {
-      return this.uniform4iv(location, v);
+    [dartx.uniform4iv](...args) {
+      return this.uniform4iv.apply(this, args);
     }
-    [dartx.uniformMatrix2fv](location, transpose, array) {
-      return this.uniformMatrix2fv(location, transpose, array);
+    [dartx.uniformMatrix2fv](...args) {
+      return this.uniformMatrix2fv.apply(this, args);
     }
-    [dartx.uniformMatrix3fv](location, transpose, array) {
-      return this.uniformMatrix3fv(location, transpose, array);
+    [dartx.uniformMatrix3fv](...args) {
+      return this.uniformMatrix3fv.apply(this, args);
     }
-    [dartx.uniformMatrix4fv](location, transpose, array) {
-      return this.uniformMatrix4fv(location, transpose, array);
+    [dartx.uniformMatrix4fv](...args) {
+      return this.uniformMatrix4fv.apply(this, args);
     }
-    [dartx.useProgram](program) {
-      return this.useProgram(program);
+    [dartx.useProgram](...args) {
+      return this.useProgram.apply(this, args);
     }
-    [dartx.validateProgram](program) {
-      return this.validateProgram(program);
+    [dartx.validateProgram](...args) {
+      return this.validateProgram.apply(this, args);
     }
-    [dartx.vertexAttrib1f](indx, x) {
-      return this.vertexAttrib1f(indx, x);
+    [dartx.vertexAttrib1f](...args) {
+      return this.vertexAttrib1f.apply(this, args);
     }
-    [dartx.vertexAttrib1fv](indx, values) {
-      return this.vertexAttrib1fv(indx, values);
+    [dartx.vertexAttrib1fv](...args) {
+      return this.vertexAttrib1fv.apply(this, args);
     }
-    [dartx.vertexAttrib2f](indx, x, y) {
-      return this.vertexAttrib2f(indx, x, y);
+    [dartx.vertexAttrib2f](...args) {
+      return this.vertexAttrib2f.apply(this, args);
     }
-    [dartx.vertexAttrib2fv](indx, values) {
-      return this.vertexAttrib2fv(indx, values);
+    [dartx.vertexAttrib2fv](...args) {
+      return this.vertexAttrib2fv.apply(this, args);
     }
-    [dartx.vertexAttrib3f](indx, x, y, z) {
-      return this.vertexAttrib3f(indx, x, y, z);
+    [dartx.vertexAttrib3f](...args) {
+      return this.vertexAttrib3f.apply(this, args);
     }
-    [dartx.vertexAttrib3fv](indx, values) {
-      return this.vertexAttrib3fv(indx, values);
+    [dartx.vertexAttrib3fv](...args) {
+      return this.vertexAttrib3fv.apply(this, args);
     }
-    [dartx.vertexAttrib4f](indx, x, y, z, w) {
-      return this.vertexAttrib4f(indx, x, y, z, w);
+    [dartx.vertexAttrib4f](...args) {
+      return this.vertexAttrib4f.apply(this, args);
     }
-    [dartx.vertexAttrib4fv](indx, values) {
-      return this.vertexAttrib4fv(indx, values);
+    [dartx.vertexAttrib4fv](...args) {
+      return this.vertexAttrib4fv.apply(this, args);
     }
-    [dartx.vertexAttribPointer](indx, size, type, normalized, stride, offset) {
-      return this.vertexAttribPointer(indx, size, type, normalized, stride, offset);
+    [dartx.vertexAttribPointer](...args) {
+      return this.vertexAttribPointer.apply(this, args);
     }
-    [dartx.viewport](x, y, width, height) {
-      return this.viewport(x, y, width, height);
+    [dartx.viewport](...args) {
+      return this.viewport.apply(this, args);
     }
-    [dartx.texImage2DUntyped](targetTexture, levelOfDetail, internalFormat, format, type, data) {
-      return this.texImage2D(targetTexture, levelOfDetail, internalFormat, format, type, data);
+    [dartx.texImage2DUntyped](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texImage2DTyped](targetTexture, levelOfDetail, internalFormat, width, height, border, format, type, data) {
-      return this.texImage2D(targetTexture, levelOfDetail, internalFormat, width, height, border, format, type, data);
+    [dartx.texImage2DTyped](...args) {
+      return this.texImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DUntyped](targetTexture, levelOfDetail, xOffset, yOffset, format, type, data) {
-      return this.texSubImage2D(targetTexture, levelOfDetail, xOffset, yOffset, format, type, data);
+    [dartx.texSubImage2DUntyped](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
-    [dartx.texSubImage2DTyped](targetTexture, levelOfDetail, xOffset, yOffset, width, height, border, format, type, data) {
-      return this.texSubImage2D(targetTexture, levelOfDetail, xOffset, yOffset, width, height, border, format, type, data);
+    [dartx.texSubImage2DTyped](...args) {
+      return this.texSubImage2D.apply(this, args);
     }
   };
   web_gl.RenderingContext[dart.implements] = () => [html$.CanvasRenderingContext];
@@ -93963,14 +93963,14 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.drawArraysInstancedAngle](mode, first, count, primcount) {
-      return this.drawArraysInstancedANGLE(mode, first, count, primcount);
+    [dartx.drawArraysInstancedAngle](...args) {
+      return this.drawArraysInstancedANGLE.apply(this, args);
     }
-    [dartx.drawElementsInstancedAngle](mode, count, type, offset, primcount) {
-      return this.drawElementsInstancedANGLE(mode, count, type, offset, primcount);
+    [dartx.drawElementsInstancedAngle](...args) {
+      return this.drawElementsInstancedANGLE.apply(this, args);
     }
-    [dartx.vertexAttribDivisorAngle](index, divisor) {
-      return this.vertexAttribDivisorANGLE(index, divisor);
+    [dartx.vertexAttribDivisorAngle](...args) {
+      return this.vertexAttribDivisorANGLE.apply(this, args);
     }
   };
   dart.setSignature(web_gl.AngleInstancedArrays, {
@@ -94166,8 +94166,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.getTranslatedShaderSource](shader) {
-      return this.getTranslatedShaderSource(shader);
+    [dartx.getTranslatedShaderSource](...args) {
+      return this.getTranslatedShaderSource.apply(this, args);
     }
   };
   dart.setSignature(web_gl.DebugShaders, {
@@ -94193,8 +94193,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.drawBuffersWebgl](buffers) {
-      return this.drawBuffersWEBGL(buffers);
+    [dartx.drawBuffersWebgl](...args) {
+      return this.drawBuffersWEBGL.apply(this, args);
     }
   };
   dart.setSignature(web_gl.DrawBuffers, {
@@ -94337,11 +94337,11 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.loseContext]() {
-      return this.loseContext();
+    [dartx.loseContext](...args) {
+      return this.loseContext.apply(this, args);
     }
-    [dartx.restoreContext]() {
-      return this.restoreContext();
+    [dartx.restoreContext](...args) {
+      return this.restoreContext.apply(this, args);
     }
   };
   dart.setSignature(web_gl.LoseContext, {
@@ -94410,17 +94410,17 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.bindVertexArray](arrayObject) {
-      return this.bindVertexArrayOES(arrayObject);
+    [dartx.bindVertexArray](...args) {
+      return this.bindVertexArrayOES.apply(this, args);
     }
-    [dartx.createVertexArray]() {
-      return this.createVertexArrayOES();
+    [dartx.createVertexArray](...args) {
+      return this.createVertexArrayOES.apply(this, args);
     }
-    [dartx.deleteVertexArray](arrayObject) {
-      return this.deleteVertexArrayOES(arrayObject);
+    [dartx.deleteVertexArray](...args) {
+      return this.deleteVertexArrayOES.apply(this, args);
     }
-    [dartx.isVertexArray](arrayObject) {
-      return this.isVertexArrayOES(arrayObject);
+    [dartx.isVertexArray](...args) {
+      return this.isVertexArrayOES.apply(this, args);
     }
   };
   dart.setSignature(web_gl.OesVertexArrayObject, {
@@ -94545,14 +94545,14 @@
     get [dartx.version]() {
       return this.version;
     }
-    [dartx.changeVersion](oldVersion, newVersion, callback, errorCallback, successCallback) {
-      return this.changeVersion(oldVersion, newVersion, callback, errorCallback, successCallback);
+    [dartx.changeVersion](...args) {
+      return this.changeVersion.apply(this, args);
     }
-    [dartx.readTransaction](callback, errorCallback, successCallback) {
-      return this.readTransaction(callback, errorCallback, successCallback);
+    [dartx.readTransaction](...args) {
+      return this.readTransaction.apply(this, args);
     }
-    [dartx.transaction](callback, errorCallback, successCallback) {
-      return this.transaction(callback, errorCallback, successCallback);
+    [dartx.transaction](...args) {
+      return this.transaction.apply(this, args);
     }
   };
   dart.setSignature(web_sql.SqlDatabase, {
@@ -94692,8 +94692,8 @@
     [dartx.item](index) {
       return html_common.convertNativeToDart_Dictionary(this[_item_1](index));
     }
-    [_item_1](index) {
-      return this.item(index);
+    [_item_1](...args) {
+      return this.item.apply(this, args);
     }
   };
   web_sql.SqlResultSetRowList[dart.implements] = () => [ListOfMap()];
@@ -94722,8 +94722,8 @@
     static _() {
       dart.throw(new core.UnsupportedError("Not supported"));
     }
-    [dartx.executeSql](sqlStatement, arguments$, callback, errorCallback) {
-      return this.executeSql(sqlStatement, arguments$, callback, errorCallback);
+    [dartx.executeSql](...args) {
+      return this.executeSql.apply(this, args);
     }
   };
   dart.setSignature(web_sql.SqlTransaction, {
diff --git a/pkg/dev_compiler/lib/src/compiler/code_generator.dart b/pkg/dev_compiler/lib/src/compiler/code_generator.dart
index 42a72ca..d2f3f8f 100644
--- a/pkg/dev_compiler/lib/src/compiler/code_generator.dart
+++ b/pkg/dev_compiler/lib/src/compiler/code_generator.dart
@@ -2261,22 +2261,18 @@
   }
 
   JS.Fun _emitNativeFunctionBody(MethodDeclaration node) {
-    if (node.isStatic) {
-      // TODO(vsm): Do we need to handle this case?
-      return null;
-    }
-
-    var params = visitFormalParameterList(node.parameters, destructure: false);
     String name =
         getAnnotationName(node.element, isJSAnnotation) ?? node.name.name;
     if (node.isGetter) {
-      return new JS.Fun(params, js.statement('{ return this.#; }', [name]));
+      return new JS.Fun([], js.statement('{ return this.#; }', [name]));
     } else if (node.isSetter) {
+      var params =
+          visitFormalParameterList(node.parameters, destructure: false);
       return new JS.Fun(
           params, js.statement('{ this.# = #; }', [name, params.last]));
     } else {
-      return new JS.Fun(
-          params, js.statement('{ return this.#(#); }', [name, params]));
+      return js.call(
+          'function (...args) { return this.#.apply(this, args); }', name);
     }
   }
 
@@ -2287,9 +2283,11 @@
 
     JS.Fun fn;
     if (_externalOrNative(node)) {
+      if (node.isStatic) {
+        // TODO(vsm): Do we need to handle this case?
+        return null;
+      }
       fn = _emitNativeFunctionBody(node);
-      // TODO(vsm): Remove if / when we handle the static case above.
-      if (fn == null) return null;
     } else {
       fn = _emitFunctionBody(node.element, node.parameters, node.body);
 
diff --git a/pkg/dev_compiler/lib/src/compiler/element_helpers.dart b/pkg/dev_compiler/lib/src/compiler/element_helpers.dart
index 053227d..7f4576d 100644
--- a/pkg/dev_compiler/lib/src/compiler/element_helpers.dart
+++ b/pkg/dev_compiler/lib/src/compiler/element_helpers.dart
@@ -51,7 +51,7 @@
 ///
 DartObject findAnnotation(Element element, bool test(DartObjectImpl value)) {
   for (var metadata in element.metadata) {
-    var value = metadata.constantValue;
+    var value = metadata.computeConstantValue();
     if (value != null && test(value)) return value;
   }
   return null;
diff --git a/pkg/dev_compiler/test/browser/language_tests.js b/pkg/dev_compiler/test/browser/language_tests.js
index 872dd21..b360aef 100644
--- a/pkg/dev_compiler/test/browser/language_tests.js
+++ b/pkg/dev_compiler/test/browser/language_tests.js
@@ -36,7 +36,7 @@
   // The number of expected unittest errors should be zero but unfortunately
   // there are a lot of broken html unittests.
   let num_expected_unittest_fails = 3;
-  let num_expected_unittest_errors = 2;
+  let num_expected_unittest_errors = 0;
 
   // TODO(jmesserly): separate StrongModeError from other errors.
   let all_status = {
@@ -268,6 +268,7 @@
       'regress_13462_1_test': skip_fail,
       'regress_14105_test': skip_fail,
       'regress_16640_test': skip_fail,
+      'regress_18535_test': fail,
       'regress_21795_test': skip_fail,
       'regress_22443_test': skip_fail,
       'regress_22666_test': skip_fail,
diff --git a/pkg/dev_compiler/test/not_yet_strong_tests.dart b/pkg/dev_compiler/test/not_yet_strong_tests.dart
index 14df2315..2b458dd 100644
--- a/pkg/dev_compiler/test/not_yet_strong_tests.dart
+++ b/pkg/dev_compiler/test/not_yet_strong_tests.dart
@@ -1600,7 +1600,6 @@
   'language/super_operator_index_test_07_multi',
   'language/super_operator_test',
   'language/super_test',
-  'language/switch6_test',
   'language/switch_bad_case_test_01_multi',
   'language/switch_bad_case_test_02_multi',
   'language/switch_case_test_00_multi',
@@ -2364,7 +2363,6 @@
   'language/private_member1_negative_test',
   'language/private_member2_negative_test',
   'language/private_member3_negative_test',
-  'language/regress_18535_test',
   'language/script1_negative_test',
   'language/script2_negative_test',
   'language/setter4_test',
diff --git a/pkg/dev_compiler/tool/input_sdk/lib/html/dart2js/html_dart2js.dart b/pkg/dev_compiler/tool/input_sdk/lib/html/dart2js/html_dart2js.dart
index fc3cde5..e103c7d 100644
--- a/pkg/dev_compiler/tool/input_sdk/lib/html/dart2js/html_dart2js.dart
+++ b/pkg/dev_compiler/tool/input_sdk/lib/html/dart2js/html_dart2js.dart
@@ -39810,7 +39810,7 @@
   /**
    * Set this CSS Dimension to the specified number of x-heights.
    *
-   * One ex is equal to the the x-height of a font's baseline to its mean line,
+   * One ex is equal to the x-height of a font's baseline to its mean line,
    * generally the height of the letter "x" in the font, which is usually about
    * half the font-size.
    */
diff --git a/pkg/dev_compiler/tool/input_sdk/lib/io/io.dart b/pkg/dev_compiler/tool/input_sdk/lib/io/io.dart
index c0d63de..66250ee 100644
--- a/pkg/dev_compiler/tool/input_sdk/lib/io/io.dart
+++ b/pkg/dev_compiler/tool/input_sdk/lib/io/io.dart
@@ -120,7 +120,7 @@
  *
  * The client connects to the WebSocket using the `connect()` method
  * and a URI that uses the Web Socket protocol.
- * The the client can write to the WebSocket with the `add()` method.
+ * The client can write to the WebSocket with the `add()` method.
  * For example,
  *
  *     WebSocket.connect('ws://127.0.0.1:4040/ws').then((socket) {
diff --git a/pkg/dev_compiler/tool/input_sdk/lib/isolate/isolate.dart b/pkg/dev_compiler/tool/input_sdk/lib/isolate/isolate.dart
index 35d2a8b..f0fd886 100644
--- a/pkg/dev_compiler/tool/input_sdk/lib/isolate/isolate.dart
+++ b/pkg/dev_compiler/tool/input_sdk/lib/isolate/isolate.dart
@@ -312,7 +312,7 @@
    * [AS_EVENT].
    * The shutdown is performed at different times depending on the priority:
    *
-   * * `IMMEDIATE`: The the isolate shuts down as soon as possible.
+   * * `IMMEDIATE`: The isolate shuts down as soon as possible.
    *     Control messages are handled in order, so all previously sent control
    *     events from this isolate will all have been processed.
    *     The shutdown should happen no later than if sent with
@@ -345,7 +345,7 @@
    * [AS_EVENT].
    * The response is sent at different times depending on the ping type:
    *
-   * * `IMMEDIATE`: The the isolate responds as soon as it receives the
+   * * `IMMEDIATE`: The isolate responds as soon as it receives the
    *     control message. This is after any previous control message
    *     from the same isolate has been received.
    * * `BEFORE_NEXT_EVENT`: The response is scheduled for the next time
diff --git a/pkg/dev_compiler/tool/input_sdk/lib/mirrors/mirrors.dart b/pkg/dev_compiler/tool/input_sdk/lib/mirrors/mirrors.dart
index f5c8370..25cab26 100644
--- a/pkg/dev_compiler/tool/input_sdk/lib/mirrors/mirrors.dart
+++ b/pkg/dev_compiler/tool/input_sdk/lib/mirrors/mirrors.dart
@@ -223,7 +223,7 @@
   /**
    * The simple name for this Dart language entity.
    *
-   * The simple name is in most cases the the identifier name of the entity,
+   * The simple name is in most cases the identifier name of the entity,
    * such as 'myMethod' for a method, [:void myMethod() {...}:] or 'mylibrary'
    * for a [:library 'mylibrary';:] declaration.
    */
@@ -920,7 +920,7 @@
   /**
    * The defining type for this typedef.
    *
-   * If the the type referred to by the reflectee is a function type *F*, the
+   * If the type referred to by the reflectee is a function type *F*, the
    * result will be [:FunctionTypeMirror:] reflecting *F* which is abstract
    * and has an abstract method [:call:] whose signature corresponds to *F*.
    * For instance [:void f(int):] is the referent for [:typedef void f(int):].
diff --git a/pkg/dev_compiler/tool/input_sdk/private/js_string.dart b/pkg/dev_compiler/tool/input_sdk/private/js_string.dart
index 57556b2..3e8a7ca 100644
--- a/pkg/dev_compiler/tool/input_sdk/private/js_string.dart
+++ b/pkg/dev_compiler/tool/input_sdk/private/js_string.dart
@@ -243,7 +243,7 @@
     return index;
   }
 
-  /// Finds the index after the the last non-whitespace character, or 0.
+  /// Finds the index after the last non-whitespace character, or 0.
   /// Start looking at position [index - 1].
   static int _skipTrailingWhitespace(String string, int index) {
     const int SPACE = 0x20;
diff --git a/runtime/BUILD.gn b/runtime/BUILD.gn
index e7e21bf..b5116d5 100644
--- a/runtime/BUILD.gn
+++ b/runtime/BUILD.gn
@@ -31,18 +31,15 @@
 }
 
 config("dart_public_config") {
-  include_dirs = [
-    ".",
-  ]
+  include_dirs = [ "." ]
 }
 
 # Adds PRODUCT define if Flutter has specified "release" for dart_runtime_mode
 config("dart_maybe_product_config") {
   defines = []
 
-  if ((dart_runtime_mode != "develop") &&
-      (dart_runtime_mode != "profile") &&
-      (dart_runtime_mode != "release")) {
+  if (dart_runtime_mode != "develop" && dart_runtime_mode != "profile" &&
+      dart_runtime_mode != "release") {
     print("Invalid |dart_runtime_mode|")
     assert(false)
   }
@@ -52,7 +49,7 @@
       print("Debug and release mode are mutually exclusive.")
     }
     assert(!dart_debug)
-    defines += ["PRODUCT"]
+    defines += [ "PRODUCT" ]
   }
 }
 
@@ -61,9 +58,8 @@
 config("dart_maybe_precompiled_runtime_config") {
   defines = []
 
-  if ((dart_runtime_mode != "develop") &&
-      (dart_runtime_mode != "profile") &&
-      (dart_runtime_mode != "release")) {
+  if (dart_runtime_mode != "develop" && dart_runtime_mode != "profile" &&
+      dart_runtime_mode != "release") {
     print("Invalid |dart_runtime_mode|")
     assert(false)
   }
@@ -75,29 +71,29 @@
     assert(!dart_debug)
 
     if (!dart_experimental_interpreter) {
-      defines += ["DART_PRECOMPILED_RUNTIME"]
+      defines += [ "DART_PRECOMPILED_RUNTIME" ]
     }
   } else if (dart_runtime_mode == "profile") {
     if (!dart_experimental_interpreter) {
-      defines += ["DART_PRECOMPILED_RUNTIME"]
+      defines += [ "DART_PRECOMPILED_RUNTIME" ]
     }
   }
 }
 
 config("dart_precompiled_runtime_config") {
   defines = []
-  defines += ["DART_PRECOMPILED_RUNTIME"]
+  defines += [ "DART_PRECOMPILED_RUNTIME" ]
 }
 
 # Controls DART_PRECOMPILER #define.
 config("dart_precompiler_config") {
   defines = []
-  defines += ["DART_PRECOMPILER"]
+  defines += [ "DART_PRECOMPILER" ]
 }
 
 config("dart_no_snapshot_config") {
   defines = []
-  defines += ["DART_NO_SNAPSHOT"]
+  defines += [ "DART_NO_SNAPSHOT" ]
 }
 
 config("dart_config") {
@@ -108,56 +104,51 @@
   }
 
   if (dart_target_arch != "") {
-    if ((dart_target_arch == "arm") ||
-        (dart_target_arch == "simarm")) {
+    if (dart_target_arch == "arm" || dart_target_arch == "simarm") {
       defines += [ "TARGET_ARCH_ARM" ]
       if (target_os == "mac" || target_os == "ios") {
         defines += [ "TARGET_ABI_IOS" ]
       } else {
         defines += [ "TARGET_ABI_EABI" ]
       }
-    } else if ((dart_target_arch == "armv6") ||
-               (dart_target_arch == "simarmv6")) {
+    } else if (dart_target_arch == "armv6" || dart_target_arch == "simarmv6") {
       defines += [ "TARGET_ARCH_ARM" ]
       defines += [ "TARGET_ARCH_ARM_6" ]
       defines += [ "TARGET_ABI_EABI" ]
-    } else if ((dart_target_arch == "armv5te") ||
-               (dart_target_arch == "simarmv5te")) {
+    } else if (dart_target_arch == "armv5te" ||
+               dart_target_arch == "simarmv5te") {
       defines += [ "TARGET_ARCH_ARM" ]
       defines += [ "TARGET_ARCH_ARM_5TE" ]
       defines += [ "TARGET_ABI_EABI" ]
-    } else if ((dart_target_arch == "arm64") ||
-               (dart_target_arch == "simarm64")) {
+    } else if (dart_target_arch == "arm64" || dart_target_arch == "simarm64") {
       defines += [ "TARGET_ARCH_ARM64" ]
-    } else if ((dart_target_arch == "mips") ||
-               (dart_target_arch == "simmips")) {
+    } else if (dart_target_arch == "mips" || dart_target_arch == "simmips") {
       defines += [ "TARGET_ARCH_MIPS" ]
     } else if (dart_target_arch == "x64") {
       defines += [ "TARGET_ARCH_X64" ]
     } else if (dart_target_arch == "ia32") {
       defines += [ "TARGET_ARCH_IA32" ]
-    } else if ((dart_target_arch == "dbc") ||
-               (dart_target_arch == "simdbc") ||
-               (dart_target_arch == "simdbc64")) {
+    } else if (dart_target_arch == "dbc" || dart_target_arch == "simdbc" ||
+               dart_target_arch == "simdbc64") {
       defines += [ "TARGET_ARCH_DBC" ]
       defines += [ "USING_SIMULATOR" ]
-    } else  {
+    } else {
       print("Invalid |dart_target_arch|")
       assert(false)
     }
   }
 
   if (dart_debug) {
-    defines += ["DEBUG"]
+    defines += [ "DEBUG" ]
   } else {
-    defines += ["NDEBUG"]
+    defines += [ "NDEBUG" ]
   }
 
   if (!is_win) {
     cflags = [
       "-Werror",
       "-Wall",
-      "-Wextra", # Also known as -W.
+      "-Wextra",  # Also known as -W.
       "-Wno-unused-parameter",
       "-Wnon-virtual-dtor",
       "-Wvla",
@@ -170,19 +161,13 @@
     ]
 
     if (dart_debug) {
-      cflags += [
-        "-O1",
-      ]
+      cflags += [ "-O1" ]
     } else {
-      cflags += [
-        "-O3",
-      ]
+      cflags += [ "-O3" ]
     }
 
     if (defined(is_asan) && is_asan) {
-      ldflags = [
-        "-fsanitize=address",
-      ]
+      ldflags = [ "-fsanitize=address" ]
     }
   }
 }
@@ -198,19 +183,18 @@
   }
   static_library(target_name) {
     configs += [
-      ":dart_config",
-      ":dart_maybe_product_config"
-    ] + extra_configs
+                 ":dart_config",
+                 ":dart_maybe_product_config",
+               ] + extra_configs
     deps = [
-      "vm:libdart_platform",
-      "third_party/double-conversion/src:libdouble_conversion",
-      ":generate_version_cc_file",
-    ] + extra_deps
-    include_dirs = [
-      ".",
-    ]
-    public_configs = [":dart_public_config"]
+             "vm:libdart_platform",
+             "third_party/double-conversion/src:libdouble_conversion",
+             ":generate_version_cc_file",
+           ] + extra_deps
+    include_dirs = [ "." ]
+    public_configs = [ ":dart_public_config" ]
     sources = [
+      "$target_gen_dir/version.cc",
       "include/dart_api.h",
       "include/dart_mirrors_api.h",
       "include/dart_native_api.h",
@@ -220,18 +204,13 @@
       "vm/mirrors_api_impl.cc",
       "vm/native_api_impl.cc",
       "vm/version.h",
-      "$target_gen_dir/version.cc",
     ]
-    defines = [
-      "DART_SHARED_LIB",
-    ]
+    defines = [ "DART_SHARED_LIB" ]
   }
 }
 
 libdart_library("libdart") {
-  extra_configs = [
-    ":dart_maybe_precompiled_runtime_config"
-  ]
+  extra_configs = [ ":dart_maybe_precompiled_runtime_config" ]
   extra_deps = [
     "vm:libdart_lib",
     "vm:libdart_vm",
@@ -250,9 +229,7 @@
 }
 
 libdart_library("libdart_precompiled_runtime") {
-  extra_configs = [
-    ":dart_precompiled_runtime_config"
-  ]
+  extra_configs = [ ":dart_precompiled_runtime_config" ]
   extra_deps = [
     "vm:libdart_lib_precompiled_runtime",
     "vm:libdart_vm_precompiled_runtime",
@@ -262,7 +239,7 @@
 libdart_library("libdart_nosnapshot") {
   extra_configs = [
     ":dart_no_snapshot_config",
-    ":dart_maybe_precompiled_runtime_config"
+    ":dart_maybe_precompiled_runtime_config",
   ]
   extra_deps = [
     "vm:libdart_lib_nosnapshot",
@@ -273,7 +250,7 @@
 libdart_library("libdart_nosnapshot_precompiled_runtime") {
   extra_configs = [
     ":dart_no_snapshot_config",
-    ":dart_precompiled_runtime_config"
+    ":dart_precompiled_runtime_config",
   ]
   extra_deps = [
     "vm:libdart_lib_nosnapshot_precompiled_runtime",
@@ -303,26 +280,31 @@
     "vm/version_in.cc",
   ]
   output = "$target_gen_dir/version.cc"
-  outputs = [ output, ]
+  outputs = [
+    output,
+  ]
 
   script = "../tools/make_version.py"
   args = [
     "--quiet",
-    "--output", rebase_path(output, root_build_dir),
-    "--input", rebase_path("vm/version_in.cc", root_build_dir),
+    "--output",
+    rebase_path(output, root_build_dir),
+    "--input",
+    rebase_path("vm/version_in.cc", root_build_dir),
   ]
 }
 
-
 executable("libdart_dependency_helper") {
-  configs += [":dart_config",
-              ":dart_maybe_product_config"]
+  configs += [
+    ":dart_config",
+    ":dart_maybe_product_config",
+  ]
   deps = [
-    "vm:libdart_lib_nosnapshot",
-    "vm:libdart_lib",
-    "vm:libdart_vm",
-    "vm:libdart_platform",
     "third_party/double-conversion/src:libdouble_conversion",
+    "vm:libdart_lib",
+    "vm:libdart_lib_nosnapshot",
+    "vm:libdart_vm",
+    "vm:libdart_vm_nosnapshot",
   ]
   sources = [
     "vm/libdart_dependency_helper.cc",
diff --git a/runtime/PRESUBMIT.py b/runtime/PRESUBMIT.py
index ca55214..946f54f 100644
--- a/runtime/PRESUBMIT.py
+++ b/runtime/PRESUBMIT.py
@@ -6,37 +6,23 @@
 import cpplint
 import re
 
-
-class PathHackException(Exception):
-  def __init__(self, error_msg):
-    self.error_msg = error_msg
-
-  def __str__(self):
-    return repr(self.error_msg)
-
-def AddSvnPathIfNeeded(runtime_path):
-  # Add the .svn into the runtime directory if needed for git or svn 1.7.
-  fake_svn_path = os.path.join(runtime_path, '.svn')
-  if os.path.exists(fake_svn_path):
-    return None
-  open(fake_svn_path, 'w').close()
-  return lambda: os.remove(fake_svn_path)
-
-
-def TrySvnPathHack(parent_path):
-  orig_path = os.path.join(parent_path, '.svn')
-  renamed_path = os.path.join(parent_path, '.svn_orig')
-  if os.path.exists(renamed_path):
-    error_msg = '".svn_orig" exists in presubmit parent directory('
-    error_msg += parent_path
-    error_msg += '). Consider renaming it manually to ".svn".'
-    raise PathHackException(error_msg)
-  if os.path.exists(orig_path):
-    # Make the parent SVN directory non-discoverable by cpplint to get
-    # the correct header guard checks. This is needed if using all Dart
-    # checkout.
-    os.rename(orig_path, renamed_path)
-    return lambda: os.rename(renamed_path, orig_path)
+# memcpy does not handle overlapping memory regions. Even though this
+# is well documented it seems to be used in error quite often. To avoid
+# problems we disallow the direct use of memcpy.  The exceptions are in
+# third-party code and in platform/globals.h which uses it to implement
+# bit_cast and bit_copy.
+def CheckMemcpy(filename):
+  if filename.endswith(os.path.join('platform', 'globals.h')) or \
+     filename.find('third_party') != -1:
+    return 0
+  fh = open(filename, 'r')
+  content = fh.read()
+  match = re.search('\\bmemcpy\\b', content)
+  if match:
+    line_number = content[0:match.start()].count('\n') + 1
+    print "%s:%d: use of memcpy is forbidden" % (filename, line_number)
+    return 1
+  return 0
 
 
 def RunLint(input_api, output_api):
@@ -44,39 +30,13 @@
   cpplint._cpplint_state.ResetErrorCounts()
   memcpy_match_count = 0
   # Find all .cc and .h files in the change list.
-  for svn_file in input_api.AffectedTextFiles():
-    filename = svn_file.AbsoluteLocalPath()
+  for git_file in input_api.AffectedTextFiles():
+    filename = git_file.AbsoluteLocalPath()
     if filename.endswith('.cc') or filename.endswith('.h'):
-      cleanup_parent = None
-      cleanup_runtime = None
-      try:
-        runtime_path = input_api.PresubmitLocalPath()
-        parent_path = os.path.dirname(runtime_path)
-        if filename.endswith('.h'):
-          cleanup_runtime = AddSvnPathIfNeeded(runtime_path)
-          cleanup_parent = TrySvnPathHack(parent_path)
-      except PathHackException, exception:
-        return [output_api.PresubmitError(str(exception))]
       # Run cpplint on the file.
       cpplint.ProcessFile(filename, 1)
-      if cleanup_parent is not None:
-        cleanup_parent()
-      if cleanup_runtime is not None:
-        cleanup_runtime()
-      # memcpy does not handle overlapping memory regions. Even though this
-      # is well documented it seems to be used in error quite often. To avoid
-      # problems we disallow the direct use of memcpy.  The exceptions are in
-      # third-party code and in platform/globals.h which uses it to implement
-      # bit_cast and bit_copy.
-      if not filename.endswith(os.path.join('platform', 'globals.h')) and \
-         filename.find('third_party') == -1:
-        fh = open(filename, 'r')
-        content = fh.read()
-        match = re.search('\\bmemcpy\\b', content)
-        if match:
-          line_number = content[0:match.start()].count('\n') + 1
-          print "%s:%d: use of memcpy is forbidden" % (filename, line_number)
-          memcpy_match_count += 1
+      # Check for memcpy use.
+      memcpy_match_count += CheckMemcpy(filename)
 
   # Report a presubmit error if any of the files had an error.
   if cpplint._cpplint_state.error_count > 0 or memcpy_match_count > 0:
@@ -84,9 +44,15 @@
   return result
 
 
+def CheckGn(input_api, output_api):
+  return input_api.canned_checks.CheckGNFormatted(input_api, output_api)
+
+
 def CheckChangeOnUpload(input_api, output_api):
-  return RunLint(input_api, output_api)
+  return (RunLint(input_api, output_api) +
+          CheckGn(input_api, output_api))
 
 
 def CheckChangeOnCommit(input_api, output_api):
-  return RunLint(input_api, output_api)
+  return (RunLint(input_api, output_api) +
+          CheckGn(input_api, output_api))
diff --git a/runtime/bin/BUILD.gn b/runtime/bin/BUILD.gn
index 81cd6b1..2a2d17b 100644
--- a/runtime/bin/BUILD.gn
+++ b/runtime/bin/BUILD.gn
@@ -20,31 +20,36 @@
 
 resources_sources_gypi =
     exec_script("../../tools/gypi_to_gn.py",
-                [rebase_path("vmservice/vmservice_sources.gypi")],
+                [ rebase_path("vmservice/vmservice_sources.gypi") ],
                 "scope",
-                ["vmservice/vmservice_sources.gypi"])
+                [ "vmservice/vmservice_sources.gypi" ])
 
 # Generate a resources.cc file for the service isolate without Observatory.
 action("gen_resources_cc") {
-  visibility = [ ":*" ] # Only targets in this file can see this.
+  visibility = [ ":*" ]  # Only targets in this file can see this.
   script = "../tools/create_resources.py"
   inputs = [
     "../tools/create_resources.py",
   ]
+
   # The path below is hard coded for the Mojo and Flutter trees. When moving
   # the Dart runtime to gn, this path might need to be updated.
-  sources = rebase_path(resources_sources_gypi.sources,
-                        "",
-                        "../bin/vmservice/")
-  outputs = [ "$target_gen_dir/resources_gen.cc" ]
+  sources = rebase_path(resources_sources_gypi.sources, "", "../bin/vmservice/")
+  outputs = [
+    "$target_gen_dir/resources_gen.cc",
+  ]
   args = [
-    "--output",
-    rebase_path("$target_gen_dir/resources_gen.cc", root_build_dir),
-    "--outer_namespace", "dart",
-    "--inner_namespace", "bin",
-    "--table_name", "service_bin",
-    "--root_prefix", rebase_path(".", root_build_dir) + "/",
-  ] + rebase_path(sources, root_build_dir)
+           "--output",
+           rebase_path("$target_gen_dir/resources_gen.cc", root_build_dir),
+           "--outer_namespace",
+           "dart",
+           "--inner_namespace",
+           "bin",
+           "--table_name",
+           "service_bin",
+           "--root_prefix",
+           rebase_path(".", root_build_dir) + "/",
+         ] + rebase_path(sources, root_build_dir)
 }
 
 template("gen_library_src_path") {
@@ -54,10 +59,12 @@
     visibility = [ ":*" ]  # Only targets in this file can see this.
     script = "../tools/gen_library_src_paths.py"
     inputs = [
-      "../tools/gen_library_src_paths.py",
-      "builtin_in.cc",
-    ] + invoker.sources
-    outputs = [ invoker.output, ]
+               "../tools/gen_library_src_paths.py",
+               "builtin_in.cc",
+             ] + invoker.sources
+    outputs = [
+      invoker.output,
+    ]
     name = invoker.name
     kind = invoker.kind
     library_name = "dart:${name}"
@@ -65,20 +72,24 @@
       library_name = invoker.library_name
     }
     args = [
-      "--output", rebase_path(invoker.output, root_build_dir),
-      "--input_cc", rebase_path("builtin_in.cc", root_build_dir),
-      "--include", "bin/builtin.h",
-      "--var_name", "dart::bin::Builtin::${name}_${kind}_paths_",
-      "--library_name", library_name,] +
-      rebase_path(invoker.sources, root_build_dir)
+             "--output",
+             rebase_path(invoker.output, root_build_dir),
+             "--input_cc",
+             rebase_path("builtin_in.cc", root_build_dir),
+             "--include",
+             "bin/builtin.h",
+             "--var_name",
+             "dart::bin::Builtin::${name}_${kind}_paths_",
+             "--library_name",
+             library_name,
+           ] + rebase_path(invoker.sources, root_build_dir)
   }
 }
 
-builtin_sources_gypi =
-    exec_script("../../tools/gypi_to_gn.py",
-                [rebase_path("builtin_sources.gypi")],
-                "scope",
-                ["builtin_sources.gypi"])
+builtin_sources_gypi = exec_script("../../tools/gypi_to_gn.py",
+                                   [ rebase_path("builtin_sources.gypi") ],
+                                   "scope",
+                                   [ "builtin_sources.gypi" ])
 
 gen_library_src_path("generate_builtin_cc_file") {
   name = "_builtin"
@@ -89,24 +100,23 @@
 
 sdk_io_sources_gypi =
     exec_script("../../tools/gypi_to_gn.py",
-                [rebase_path("../../sdk/lib/io/io_sources.gypi")],
+                [ rebase_path("../../sdk/lib/io/io_sources.gypi") ],
                 "scope",
-                ["../../sdk/lib/io/io_sources.gypi"])
+                [ "../../sdk/lib/io/io_sources.gypi" ])
 sdk_io_sources =
     rebase_path(sdk_io_sources_gypi.sources, ".", "../../sdk/lib/io")
 
 gen_library_src_path("generate_io_cc_file") {
   name = "io"
   kind = "source"
-  sources = ["../../sdk/lib/io/io.dart"] + sdk_io_sources
+  sources = [ "../../sdk/lib/io/io.dart" ] + sdk_io_sources
   output = "$target_gen_dir/io_gen.cc"
 }
 
-io_sources_gypi =
-    exec_script("../../tools/gypi_to_gn.py",
-                [rebase_path("io_sources.gypi")],
-                "scope",
-                ["io_sources.gypi"])
+io_sources_gypi = exec_script("../../tools/gypi_to_gn.py",
+                              [ rebase_path("io_sources.gypi") ],
+                              "scope",
+                              [ "io_sources.gypi" ])
 
 gen_library_src_path("generate_io_patch_cc_file") {
   name = "io"
@@ -118,7 +128,9 @@
 gen_library_src_path("generate_html_cc_file") {
   name = "html"
   kind = "source"
-  sources = ["../../sdk/lib/html/dartium/html_dartium.dart"]
+  sources = [
+    "../../sdk/lib/html/dartium/html_dartium.dart",
+  ]
   output = "$target_gen_dir/html_gen.cc"
 }
 
@@ -126,13 +138,13 @@
   name = "html_common"
   kind = "source"
   sources = [
-    "../../sdk/lib/html/html_common/html_common.dart",
+    "../../sdk/lib/html/html_common/conversions.dart",
+    "../../sdk/lib/html/html_common/conversions_dartium.dart",
     "../../sdk/lib/html/html_common/css_class_set.dart",
     "../../sdk/lib/html/html_common/device.dart",
     "../../sdk/lib/html/html_common/filtered_element_list.dart",
+    "../../sdk/lib/html/html_common/html_common.dart",
     "../../sdk/lib/html/html_common/lists.dart",
-    "../../sdk/lib/html/html_common/conversions.dart",
-    "../../sdk/lib/html/html_common/conversions_dartium.dart",
   ]
   output = "$target_gen_dir/html_common_gen.cc"
 }
@@ -140,36 +152,55 @@
 gen_library_src_path("generate_js_cc_file") {
   name = "js"
   kind = "source"
-  sources = ["../../sdk/lib/js/dartium/js_dartium.dart"]
+  sources = [
+    "../../sdk/lib/js/dartium/js_dartium.dart",
+  ]
   output = "$target_gen_dir/js_gen.cc"
 }
 
+gen_library_src_path("generate_js_util_cc_file") {
+  name = "js_util"
+  kind = "source"
+  sources = [
+    "../../sdk/lib/js_util/dartium/js_util_dartium.dart",
+  ]
+  output = "$target_gen_dir/js_util_gen.cc"
+}
+
 gen_library_src_path("generate_blink_cc_file") {
   name = "_blink"
   kind = "source"
-  sources = ["../../sdk/lib/_blink/dartium/_blink_dartium.dart"]
+  sources = [
+    "../../sdk/lib/_blink/dartium/_blink_dartium.dart",
+  ]
   output = "$target_gen_dir/blink_gen.cc"
 }
 
 gen_library_src_path("generate_indexed_db_cc_file") {
   name = "indexed_db"
   kind = "source"
-  sources = ["../../sdk/lib/indexed_db/dartium/indexed_db_dartium.dart"]
+  sources = [
+    "../../sdk/lib/indexed_db/dartium/indexed_db_dartium.dart",
+  ]
   output = "$target_gen_dir/indexed_db_gen.cc"
 }
 
 gen_library_src_path("generate_cached_patches_cc_file") {
   name = "cached_patches"
   library_name = "cached_patches.dart"
-  kind = "sources"
-  sources = ["../../sdk/lib/js/dartium/cached_patches.dart"]
+  kind = "source"
+  sources = [
+    "../../sdk/lib/js/dartium/cached_patches.dart",
+  ]
   output = "$target_gen_dir/cached_patches_gen.cc"
 }
 
 gen_library_src_path("generate_web_gl_cc_file") {
   name = "web_gl"
   kind = "source"
-  sources = ["../../sdk/lib/web_gl/dartium/web_gl_dartium.dart"]
+  sources = [
+    "../../sdk/lib/web_gl/dartium/web_gl_dartium.dart",
+  ]
   output = "$target_gen_dir/web_gl_gen.cc"
 }
 
@@ -177,36 +208,42 @@
   name = "metadata"
   library_name = "metadata.dart"
   kind = "source"
-  sources = ["../../sdk/lib/html/html_common/metadata.dart"]
+  sources = [
+    "../../sdk/lib/html/html_common/metadata.dart",
+  ]
   output = "$target_gen_dir/metadata_gen.cc"
 }
 
 gen_library_src_path("generate_web_sql_cc_file") {
   name = "web_sql"
   kind = "source"
-  sources = ["../../sdk/lib/web_sql/dartium/web_sql_dartium.dart"]
+  sources = [
+    "../../sdk/lib/web_sql/dartium/web_sql_dartium.dart",
+  ]
   output = "$target_gen_dir/web_sql_gen.cc"
 }
 
 gen_library_src_path("generate_svg_cc_file") {
   name = "svg"
   kind = "source"
-  sources = ["../../sdk/lib/svg/dartium/svg_dartium.dart"]
+  sources = [
+    "../../sdk/lib/svg/dartium/svg_dartium.dart",
+  ]
   output = "$target_gen_dir/svg_gen.cc"
 }
 
 gen_library_src_path("generate_web_audio_cc_file") {
   name = "web_audio"
   kind = "source"
-  sources = ["../../sdk/lib/web_audio/dartium/web_audio_dartium.dart"]
+  sources = [
+    "../../sdk/lib/web_audio/dartium/web_audio_dartium.dart",
+  ]
   output = "$target_gen_dir/web_audio_gen.cc"
 }
 
 config("libdart_builtin_config") {
   if (!is_win) {
-    libs = [
-      "dl",
-    ]
+    libs = [ "dl" ]
   }
   if (is_android) {
     libs += [
@@ -218,53 +255,58 @@
 
 builtin_impl_sources_gypi =
     exec_script("../../tools/gypi_to_gn.py",
-                [rebase_path("builtin_impl_sources.gypi")],
+                [ rebase_path("builtin_impl_sources.gypi") ],
                 "scope",
-                ["builtin_impl_sources.gypi"])
+                [ "builtin_impl_sources.gypi" ])
 
 static_library("libdart_builtin") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config"]
-  public_configs = [":libdart_builtin_config"]
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+  ]
+  public_configs = [ ":libdart_builtin_config" ]
   deps = [
+    ":generate_blink_cc_file",
     ":generate_builtin_cc_file",
-    ":generate_io_cc_file",
-    ":generate_io_patch_cc_file",
+    ":generate_cached_patches_cc_file",
     ":generate_html_cc_file",
     ":generate_html_common_cc_file",
-    ":generate_js_cc_file",
-    ":generate_blink_cc_file",
     ":generate_indexed_db_cc_file",
-    ":generate_cached_patches_cc_file",
-    ":generate_web_gl_cc_file",
+    ":generate_io_cc_file",
+    ":generate_io_patch_cc_file",
+    ":generate_js_cc_file",
+    ":generate_js_util_cc_file",
     ":generate_metadata_cc_file",
-    ":generate_web_sql_cc_file",
     ":generate_svg_cc_file",
     ":generate_web_audio_cc_file",
+    ":generate_web_gl_cc_file",
+    ":generate_web_sql_cc_file",
   ]
-  include_dirs = [
-    "..",
-  ]
-  set_sources_assignment_filter(["*_test.cc", "*_test.h"])
+  include_dirs = [ ".." ]
+  set_sources_assignment_filter([
+                                  "*_test.cc",
+                                  "*_test.h",
+                                ])
   sources = [
-    "log_android.cc",
-    "log_fuchsia.cc",
-    "log_linux.cc",
-    "log_macos.cc",
-    "log_win.cc",
-  ] + builtin_impl_sources_gypi.sources
+              "log_android.cc",
+              "log_fuchsia.cc",
+              "log_linux.cc",
+              "log_macos.cc",
+              "log_win.cc",
+            ] + builtin_impl_sources_gypi.sources
 }
 
-io_impl_sources_gypi =
-    exec_script("../../tools/gypi_to_gn.py",
-                [ rebase_path("io_impl_sources.gypi") ],
-                "scope",
-                [ "io_impl_sources.gypi" ])
+io_impl_sources_gypi = exec_script("../../tools/gypi_to_gn.py",
+                                   [ rebase_path("io_impl_sources.gypi") ],
+                                   "scope",
+                                   [ "io_impl_sources.gypi" ])
 
 executable("gen_snapshot") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config",
-              "..:dart_precompiler_config"]
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+    "..:dart_precompiler_config",
+  ]
   deps = [
     ":gen_resources_cc",
     ":gen_snapshot_dart_io",
@@ -276,30 +318,29 @@
   ]
 
   sources = [
-    "address_sanitizer.cc",
-    "gen_snapshot.cc",
-    # Very limited native resolver provided.
-    "builtin_common.cc",
-    "builtin_gen_snapshot.cc",
-    "builtin.cc",
-    "builtin.h",
-    "vmservice_impl.cc",
-    "vmservice_impl.h",
     # Include generated source files.
     "$target_gen_dir/builtin_gen.cc",
     "$target_gen_dir/io_gen.cc",
     "$target_gen_dir/io_patch_gen.cc",
     "$target_gen_dir/resources_gen.cc",
+    "address_sanitizer.cc",
+    "builtin.cc",
+    "builtin.h",
+
+    # Very limited native resolver provided.
+    "builtin_common.cc",
+    "builtin_gen_snapshot.cc",
+    "gen_snapshot.cc",
+    "vmservice_impl.cc",
+    "vmservice_impl.h",
   ]
 
-  include_dirs = [
-    "..",
-  ]
+  include_dirs = [ ".." ]
 
   if (is_mac) {
     libs = [
       "CoreFoundation.framework",
-      "CoreServices.framework"
+      "CoreServices.framework",
     ]
   }
 
@@ -317,9 +358,11 @@
 # A source set for the implementation of 'dart:io' library
 # (without secure sockets) suitable for linking with gen_snapshot.
 source_set("gen_snapshot_dart_io") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config",
-              "..:dart_precompiler_config"]
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+    "..:dart_precompiler_config",
+  ]
 
   deps = [
     "$dart_zlib_path",
@@ -351,88 +394,101 @@
 
   include_dirs = [
     "..",
-    "//third_party"
+    "//third_party",
   ]
 }
 
 source_set("libdart_embedder_noio") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config"]
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+  ]
   deps = [
     "..:libdart",
   ]
 }
 
 # A source set for the implementation of 'dart:io' library.
-source_set("embedded_dart_io") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config"]
-  custom_sources_filter = [
-    "*_test.cc",
-    "*_test.h",
-    "builtin.cc",
-    "builtin_gen_snapshot.cc",
-  ]
-  if (!is_mac && !is_ios) {
-    # Dart tree uses *_macos.* instead of *_mac.*
-    custom_sources_filter += [
-      "*_macos.h",
-      "*_macos.cc",
-    ]
+template("dart_io") {
+  extra_sources = []
+  if (defined(invoker.extra_sources)) {
+    extra_sources += invoker.extra_sources
   }
-  set_sources_assignment_filter(custom_sources_filter)
-
-  defines = []
-  if (is_mac || is_ios) {
-    libs = [
-      "CoreFoundation.framework",
-      "Security.framework",
+  source_set(target_name) {
+    configs += [
+      "..:dart_config",
+      "..:dart_maybe_product_config",
     ]
-
-    if (is_mac) {
-      libs += [
-        "CoreServices.framework",
+    custom_sources_filter = [
+      "*_test.cc",
+      "*_test.h",
+      "builtin.cc",
+      "builtin_gen_snapshot.cc",
+    ]
+    if (!is_mac && !is_ios) {
+      # Dart tree uses *_macos.* instead of *_mac.*
+      custom_sources_filter += [
+        "*_macos.h",
+        "*_macos.cc",
       ]
     }
-  } else if (defined(is_fuchsia) && is_fuchsia) {
-    defines += [
-      "DART_IO_SECURE_SOCKET_DISABLED"
-    ]
-  } else {
-    deps = [
-      "//third_party/boringssl",
+    set_sources_assignment_filter(custom_sources_filter)
+
+    defines = []
+    if (is_mac || is_ios) {
+      libs = [
+        "CoreFoundation.framework",
+        "Security.framework",
+      ]
+
+      if (is_mac) {
+        libs += [ "CoreServices.framework" ]
+      }
+    } else if (defined(is_fuchsia) && is_fuchsia) {
+      defines += [ "DART_IO_SECURE_SOCKET_DISABLED" ]
+    } else {
+      deps = [
+        "//third_party/boringssl",
+      ]
+    }
+
+    sources = io_impl_sources_gypi.sources + builtin_impl_sources_gypi.sources
+    sources += [
+                 "builtin_natives.cc",
+                 "io_natives.cc",
+                 "io_natives.h",
+                 "log_android.cc",
+                 "log_linux.cc",
+                 "log_macos.cc",
+                 "log_win.cc",
+                 "log.h",
+               ] + extra_sources
+
+    if (is_linux || is_win) {
+      if (dart_use_fallback_root_certificates) {
+        sources += [ "//third_party/root_certificates/root_certificates.cc" ]
+      } else {
+        defines += [ "DART_IO_ROOT_CERTS_DISABLED" ]
+      }
+    }
+
+    include_dirs = [
+      "..",
+      "//third_party",
     ]
   }
+}
 
-  sources = io_impl_sources_gypi.sources + builtin_impl_sources_gypi.sources
-  sources += [
+dart_io("embedded_dart_io") {
+  extra_sources = [
     "builtin_nolib.cc",
-    "builtin_natives.cc",
-    "io_natives.cc",
-    "io_natives.h",
     "embedded_dart_io.cc",
     "embedded_dart_io.h",
-    "log_android.cc",
-    "log_linux.cc",
-    "log_macos.cc",
-    "log_win.cc",
-    "log.h",
   ]
+}
 
-  if (is_linux || is_win) {
-    if (dart_use_fallback_root_certificates) {
-      sources += [ "//third_party/root_certificates/root_certificates.cc"]
-    } else {
-      defines += [
-        "DART_IO_ROOT_CERTS_DISABLED",
-      ]
-    }
-  }
-
-  include_dirs = [
-    "..",
-    "//third_party"
-  ]
+dart_io("standalone_dart_io") {
+  extra_sources = []
 }
 
 action("generate_snapshot_bin") {
@@ -526,31 +582,29 @@
   }
   executable(target_name) {
     configs += [
-      "..:dart_config",
-      "..:dart_maybe_product_config"
-    ] + extra_configs
+                 "..:dart_config",
+                 "..:dart_maybe_product_config",
+               ] + extra_configs
 
     deps = [
-      ":gen_resources_cc",
-      ":embedded_dart_io",
-      ":libdart_builtin",
-      "$dart_zlib_path",
-    ] + extra_deps
+             ":gen_resources_cc",
+             ":standalone_dart_io",
+             ":libdart_builtin",
+             "$dart_zlib_path",
+           ] + extra_deps
 
     if (dart_use_tcmalloc) {
-      deps += [
-        "//third_party/tcmalloc",
-      ]
+      deps += [ "//third_party/tcmalloc" ]
     }
 
     defines = extra_defines
 
     sources = [
-      "main.cc",
-      "vmservice_impl.cc",
-      "vmservice_impl.h",
-      "$target_gen_dir/resources_gen.cc",
-    ] + extra_sources
+                "main.cc",
+                "vmservice_impl.cc",
+                "vmservice_impl.h",
+                "$target_gen_dir/resources_gen.cc",
+              ] + extra_sources
 
     include_dirs = [
       "..",
@@ -558,13 +612,9 @@
     ]
 
     if (is_win) {
-      ldflags = [
-        "/EXPORT:Dart_True"
-      ]
+      ldflags = [ "/EXPORT:Dart_True" ]
     } else {
-      ldflags = [
-        "-rdynamic",
-      ]
+      ldflags = [ "-rdynamic" ]
     }
 
     if (is_win) {
@@ -586,28 +636,29 @@
       ":dart_snapshot_cc",
       "../observatory:standalone_observatory_archive",
     ]
+    extra_sources = [ "builtin_nolib.cc" ]
   }
 
   dart_executable("dart_noopt") {
-    extra_configs = [
-      "..:dart_precompiler_config",
-    ]
+    extra_configs = [ "..:dart_precompiler_config" ]
     extra_deps = [
       "..:libdart_noopt",
       ":dart_snapshot_cc",
       "../observatory:standalone_observatory_archive",
     ]
+    extra_sources = [ "builtin_nolib.cc" ]
   }
 
   dart_executable("dart_precompiled_runtime") {
-    extra_configs = [
-      "..:dart_precompiled_runtime_config"
-    ]
+    extra_configs = [ "..:dart_precompiled_runtime_config" ]
     extra_deps = [
       "..:libdart_precompiled_runtime",
-      ":dart_snapshot_cc",
       "../observatory:standalone_observatory_archive",
     ]
+    extra_sources = [
+      "builtin_nolib.cc",
+      "snapshot_empty.cc",
+    ]
   }
 }
 
@@ -617,28 +668,64 @@
     "..:dart_no_snapshot_config",
   ]
   extra_deps = [
-    "..:libdart",
+    ":generate_builtin_cc_file",
+    ":generate_io_cc_file",
+    ":generate_io_patch_cc_file",
+    ":generate_html_cc_file",
+    ":generate_html_common_cc_file",
+    ":generate_js_cc_file",
+    ":generate_js_util_cc_file",
+    ":generate_blink_cc_file",
+    ":generate_indexed_db_cc_file",
+    ":generate_cached_patches_cc_file",
+    ":generate_web_gl_cc_file",
+    ":generate_metadata_cc_file",
+    ":generate_web_sql_cc_file",
+    ":generate_svg_cc_file",
+    ":generate_web_audio_cc_file",
+    "..:libdart_nosnapshot_with_precompiler",
   ]
-  extra_defines = [
-    "NO_OBSERVATORY",
-  ]
+  extra_defines = [ "NO_OBSERVATORY" ]
   extra_sources = [
+    "builtin.cc",
+    "builtin.h",
     "observatory_assets_empty.cc",
     "snapshot_empty.cc",
+
+    # Include generated source files.
+    "$target_gen_dir/builtin_gen.cc",
+    "$target_gen_dir/io_gen.cc",
+    "$target_gen_dir/io_patch_gen.cc",
+    "$target_gen_dir/html_gen.cc",
+    "$target_gen_dir/html_common_gen.cc",
+    "$target_gen_dir/js_gen.cc",
+    "$target_gen_dir/js_util_gen.cc",
+    "$target_gen_dir/blink_gen.cc",
+    "$target_gen_dir/indexed_db_gen.cc",
+    "$target_gen_dir/cached_patches_gen.cc",
+    "$target_gen_dir/web_gl_gen.cc",
+    "$target_gen_dir/metadata_gen.cc",
+    "$target_gen_dir/web_sql_gen.cc",
+    "$target_gen_dir/svg_gen.cc",
+    "$target_gen_dir/web_audio_gen.cc",
   ]
 }
 
 if (defined(is_fuchsia) && is_fuchsia) {
   copy("hello_fuchsia") {
-    sources = [ "../tests/vm/dart/hello_fuchsia_test.dart" ]
-    outputs = [ "$root_out_dir/hello_fuchsia.dart" ]
+    sources = [
+      "../tests/vm/dart/hello_fuchsia_test.dart",
+    ]
+    outputs = [
+      "$root_out_dir/hello_fuchsia.dart",
+    ]
   }
 
   executable("run_vm_tests_fuchsia") {
     testonly = true
-    configs += ["..:dart_config"]
+    configs += [ "..:dart_config" ]
     sources = [
-      "run_vm_tests_fuchsia.cc"
+      "run_vm_tests_fuchsia.cc",
     ]
     libs = [
       "launchpad",
@@ -657,10 +744,9 @@
   if (defined(is_fuchsia) && is_fuchsia) {
     extra_deps += [ ":hello_fuchsia" ]
   }
-  extra_defines = [
-    "NO_OBSERVATORY",
-  ]
+  extra_defines = [ "NO_OBSERVATORY" ]
   extra_sources = [
+    "builtin_nolib.cc",
     "observatory_assets_empty.cc",
   ]
 }
@@ -700,56 +786,57 @@
 }
 
 executable("run_vm_tests") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config"]
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+  ]
   deps = [
-    "..:libdart",
-    ":libdart_builtin",
-    ":embedded_dart_io",
     ":dart_snapshot_cc",
     ":generate_snapshot_test_dat_file",
+    ":libdart_builtin",
+    ":standalone_dart_io",
     "$dart_zlib_path",
+    "..:libdart",
   ]
   include_dirs = [
     "..",
     "$target_gen_dir",
   ]
-  defines = [
-    "TESTING",
-  ]
+  defines = [ "TESTING" ]
 
   if (dart_use_tcmalloc) {
-    deps += [
-      "//third_party/tcmalloc",
-    ]
+    deps += [ "//third_party/tcmalloc" ]
   }
 
   # The VM sources are already included in libdart, so we just want to add in
   # the tests here.
   vm_tests_list = exec_script("../../tools/gypi_to_gn.py",
-                                [rebase_path("../vm/vm_sources.gypi"),
-                                 "--keep_only=_test.cc",
-                                 "--keep_only=_test.h",],
-                                "scope",
-                                ["../vm/vm_sources.gypi"])
+                              [
+                                rebase_path("../vm/vm_sources.gypi"),
+                                "--keep_only=_test.cc",
+                                "--keep_only=_test.h",
+                              ],
+                              "scope",
+                              [ "../vm/vm_sources.gypi" ])
   vm_tests = rebase_path(vm_tests_list.sources, ".", "../vm")
 
   builtin_impl_tests_list =
       exec_script("../../tools/gypi_to_gn.py",
-                  [rebase_path("builtin_impl_sources.gypi"),
-                   "--keep_only=_test.cc",
-                   "--keep_only=_test.h",],
+                  [
+                    rebase_path("builtin_impl_sources.gypi"),
+                    "--keep_only=_test.cc",
+                    "--keep_only=_test.h",
+                  ],
                   "scope",
-                  ["builtin_impl_sources.gypi"])
+                  [ "builtin_impl_sources.gypi" ])
 
   sources = [
-    "run_vm_tests.cc",
-  ] + builtin_impl_tests_list.sources + vm_tests
+              "builtin_nolib.cc",
+              "run_vm_tests.cc",
+            ] + builtin_impl_tests_list.sources + vm_tests
 
   if (!is_win) {
-    ldflags = [
-      "-rdynamic",
-    ]
+    ldflags = [ "-rdynamic" ]
   }
 
   if (is_win) {
@@ -772,21 +859,15 @@
       "test_extension.c",
       "test_extension_dllmain_win.cc",
     ]
-    include_dirs = [
-      "..",
-    ]
+    include_dirs = [ ".." ]
     defines = [
       # The only effect of DART_SHARED_LIB is to export the Dart API.
       "DART_SHARED_LIB",
     ]
     if (is_win) {
-      libs = [
-        "dart.lib"
-      ]
+      libs = [ "dart.lib" ]
       abs_root_out_dir = rebase_path(root_out_dir)
-      ldflags = [
-        "/LIBPATH:$abs_root_out_dir"
-      ]
+      ldflags = [ "/LIBPATH:$abs_root_out_dir" ]
     }
   }
 
@@ -798,21 +879,15 @@
       "../../samples/sample_extension/sample_extension.cc",
       "../../samples/sample_extension/sample_extension_dllmain_win.cc",
     ]
-    include_dirs = [
-      "..",
-    ]
+    include_dirs = [ ".." ]
     defines = [
       # The only effect of DART_SHARED_LIB is to export the Dart API.
       "DART_SHARED_LIB",
     ]
     if (is_win) {
-      libs = [
-        "dart.lib"
-      ]
+      libs = [ "dart.lib" ]
       abs_root_out_dir = rebase_path(root_out_dir)
-      ldflags = [
-        "/LIBPATH:$abs_root_out_dir"
-      ]
+      ldflags = [ "/LIBPATH:$abs_root_out_dir" ]
     }
   }
 }
diff --git a/runtime/bin/builtin.dart b/runtime/bin/builtin.dart
index d4aa012..ceba8cd 100644
--- a/runtime/bin/builtin.dart
+++ b/runtime/bin/builtin.dart
@@ -1,5 +1,5 @@
 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file
-// for details. All rights solveserved. Use of this source code is governed by a
+// for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
 library builtin;
diff --git a/runtime/bin/builtin.h b/runtime/bin/builtin.h
index d7e1e4c..f61316a 100644
--- a/runtime/bin/builtin.h
+++ b/runtime/bin/builtin.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_BUILTIN_H_
-#define BIN_BUILTIN_H_
+#ifndef RUNTIME_BIN_BUILTIN_H_
+#define RUNTIME_BIN_BUILTIN_H_
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -103,4 +103,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_BUILTIN_H_
+#endif  // RUNTIME_BIN_BUILTIN_H_
diff --git a/runtime/bin/common_patch.dart b/runtime/bin/common_patch.dart
index b485dc9a..3e9be62 100644
--- a/runtime/bin/common_patch.dart
+++ b/runtime/bin/common_patch.dart
@@ -2,6 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
+import 'dart:nativewrappers';
+
 @patch class _IOCrypto {
   @patch static Uint8List getRandomBytes(int count)
       native "Crypto_GetRandomBytes";
@@ -10,4 +12,4 @@
 _setupHooks() {
   VMLibraryHooks.eventHandlerSendData = _EventHandler._sendData;
   VMLibraryHooks.timerMillisecondClock = _EventHandler._timerMillisecondClock;
-}
\ No newline at end of file
+}
diff --git a/runtime/bin/crypto.h b/runtime/bin/crypto.h
index b82fc4f..ccfb8fb 100644
--- a/runtime/bin/crypto.h
+++ b/runtime/bin/crypto.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_CRYPTO_H_
-#define BIN_CRYPTO_H_
+#ifndef RUNTIME_BIN_CRYPTO_H_
+#define RUNTIME_BIN_CRYPTO_H_
 
 #include "bin/builtin.h"
 #include "bin/utils.h"
@@ -23,5 +23,5 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_CRYPTO_H_
+#endif  // RUNTIME_BIN_CRYPTO_H_
 
diff --git a/runtime/bin/dartutils.h b/runtime/bin/dartutils.h
index ff2ae20..c2ab3fb 100644
--- a/runtime/bin/dartutils.h
+++ b/runtime/bin/dartutils.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_DARTUTILS_H_
-#define BIN_DARTUTILS_H_
+#ifndef RUNTIME_BIN_DARTUTILS_H_
+#define RUNTIME_BIN_DARTUTILS_H_
 
 #include "bin/isolate_data.h"
 #include "include/dart_api.h"
@@ -686,4 +686,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_DARTUTILS_H_
+#endif  // RUNTIME_BIN_DARTUTILS_H_
diff --git a/runtime/bin/directory.h b/runtime/bin/directory.h
index ee1f389..a15e6ad 100644
--- a/runtime/bin/directory.h
+++ b/runtime/bin/directory.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_DIRECTORY_H_
-#define BIN_DIRECTORY_H_
+#ifndef RUNTIME_BIN_DIRECTORY_H_
+#define RUNTIME_BIN_DIRECTORY_H_
 
 #include "bin/builtin.h"
 #include "bin/dartutils.h"
@@ -300,4 +300,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_DIRECTORY_H_
+#endif  // RUNTIME_BIN_DIRECTORY_H_
diff --git a/runtime/bin/embedded_dart_io.h b/runtime/bin/embedded_dart_io.h
index 56dbba8..84f5aa4 100644
--- a/runtime/bin/embedded_dart_io.h
+++ b/runtime/bin/embedded_dart_io.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_EMBEDDED_DART_IO_H_
-#define BIN_EMBEDDED_DART_IO_H_
+#ifndef RUNTIME_BIN_EMBEDDED_DART_IO_H_
+#define RUNTIME_BIN_EMBEDDED_DART_IO_H_
 
 namespace dart {
 namespace bin {
@@ -30,4 +30,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_EMBEDDED_DART_IO_H_
+#endif  // RUNTIME_BIN_EMBEDDED_DART_IO_H_
diff --git a/runtime/bin/eventhandler.h b/runtime/bin/eventhandler.h
index 44b5ec8..849c3ed 100644
--- a/runtime/bin/eventhandler.h
+++ b/runtime/bin/eventhandler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_EVENTHANDLER_H_
-#define BIN_EVENTHANDLER_H_
+#ifndef RUNTIME_BIN_EVENTHANDLER_H_
+#define RUNTIME_BIN_EVENTHANDLER_H_
 
 #include "bin/builtin.h"
 #include "bin/dartutils.h"
@@ -669,4 +669,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_EVENTHANDLER_H_
+#endif  // RUNTIME_BIN_EVENTHANDLER_H_
diff --git a/runtime/bin/eventhandler_android.h b/runtime/bin/eventhandler_android.h
index 8841861..c2f72bc 100644
--- a/runtime/bin/eventhandler_android.h
+++ b/runtime/bin/eventhandler_android.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_EVENTHANDLER_ANDROID_H_
-#define BIN_EVENTHANDLER_ANDROID_H_
+#ifndef RUNTIME_BIN_EVENTHANDLER_ANDROID_H_
+#define RUNTIME_BIN_EVENTHANDLER_ANDROID_H_
 
-#if !defined(BIN_EVENTHANDLER_H_)
+#if !defined(RUNTIME_BIN_EVENTHANDLER_H_)
 #error Do not include eventhandler_android.h directly;
 #error use eventhandler.h instead.
 #endif
@@ -101,4 +101,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_EVENTHANDLER_ANDROID_H_
+#endif  // RUNTIME_BIN_EVENTHANDLER_ANDROID_H_
diff --git a/runtime/bin/eventhandler_fuchsia.h b/runtime/bin/eventhandler_fuchsia.h
index b168c62..27e4903 100644
--- a/runtime/bin/eventhandler_fuchsia.h
+++ b/runtime/bin/eventhandler_fuchsia.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_EVENTHANDLER_FUCHSIA_H_
-#define BIN_EVENTHANDLER_FUCHSIA_H_
+#ifndef RUNTIME_BIN_EVENTHANDLER_FUCHSIA_H_
+#define RUNTIME_BIN_EVENTHANDLER_FUCHSIA_H_
 
-#if !defined(BIN_EVENTHANDLER_H_)
+#if !defined(RUNTIME_BIN_EVENTHANDLER_H_)
 #error Do not include eventhandler_fuchsia.h directly; use eventhandler.h instead.
 #endif
 
@@ -116,4 +116,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_EVENTHANDLER_FUCHSIA_H_
+#endif  // RUNTIME_BIN_EVENTHANDLER_FUCHSIA_H_
diff --git a/runtime/bin/eventhandler_linux.h b/runtime/bin/eventhandler_linux.h
index dd87c22..ac46454 100644
--- a/runtime/bin/eventhandler_linux.h
+++ b/runtime/bin/eventhandler_linux.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_EVENTHANDLER_LINUX_H_
-#define BIN_EVENTHANDLER_LINUX_H_
+#ifndef RUNTIME_BIN_EVENTHANDLER_LINUX_H_
+#define RUNTIME_BIN_EVENTHANDLER_LINUX_H_
 
-#if !defined(BIN_EVENTHANDLER_H_)
+#if !defined(RUNTIME_BIN_EVENTHANDLER_H_)
 #error Do not include eventhandler_linux.h directly; use eventhandler.h instead.
 #endif
 
@@ -100,4 +100,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_EVENTHANDLER_LINUX_H_
+#endif  // RUNTIME_BIN_EVENTHANDLER_LINUX_H_
diff --git a/runtime/bin/eventhandler_macos.h b/runtime/bin/eventhandler_macos.h
index b846594..fbeac80 100644
--- a/runtime/bin/eventhandler_macos.h
+++ b/runtime/bin/eventhandler_macos.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_EVENTHANDLER_MACOS_H_
-#define BIN_EVENTHANDLER_MACOS_H_
+#ifndef RUNTIME_BIN_EVENTHANDLER_MACOS_H_
+#define RUNTIME_BIN_EVENTHANDLER_MACOS_H_
 
-#if !defined(BIN_EVENTHANDLER_H_)
+#if !defined(RUNTIME_BIN_EVENTHANDLER_H_)
 #error Do not include eventhandler_macos.h directly; use eventhandler.h instead.
 #endif
 
@@ -115,4 +115,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_EVENTHANDLER_MACOS_H_
+#endif  // RUNTIME_BIN_EVENTHANDLER_MACOS_H_
diff --git a/runtime/bin/eventhandler_patch.dart b/runtime/bin/eventhandler_patch.dart
index effe402..588a4b8 100644
--- a/runtime/bin/eventhandler_patch.dart
+++ b/runtime/bin/eventhandler_patch.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'dart:nativewrappers';
-
 @patch class _EventHandler {
   @patch static void _sendData(Object sender,
                                     SendPort sendPort,
diff --git a/runtime/bin/eventhandler_win.h b/runtime/bin/eventhandler_win.h
index 9daff93..4ad7501 100644
--- a/runtime/bin/eventhandler_win.h
+++ b/runtime/bin/eventhandler_win.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_EVENTHANDLER_WIN_H_
-#define BIN_EVENTHANDLER_WIN_H_
+#ifndef RUNTIME_BIN_EVENTHANDLER_WIN_H_
+#define RUNTIME_BIN_EVENTHANDLER_WIN_H_
 
-#if !defined(BIN_EVENTHANDLER_H_)
+#if !defined(RUNTIME_BIN_EVENTHANDLER_H_)
 #error Do not include eventhandler_win.h directly; use eventhandler.h instead.
 #endif
 
@@ -553,4 +553,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_EVENTHANDLER_WIN_H_
+#endif  // RUNTIME_BIN_EVENTHANDLER_WIN_H_
diff --git a/runtime/bin/extensions.h b/runtime/bin/extensions.h
index bcbcac3..3739c43 100644
--- a/runtime/bin/extensions.h
+++ b/runtime/bin/extensions.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_EXTENSIONS_H_
-#define BIN_EXTENSIONS_H_
+#ifndef RUNTIME_BIN_EXTENSIONS_H_
+#define RUNTIME_BIN_EXTENSIONS_H_
 
 #include "include/dart_api.h"
 #include "platform/globals.h"
@@ -41,4 +41,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_EXTENSIONS_H_
+#endif  // RUNTIME_BIN_EXTENSIONS_H_
diff --git a/runtime/bin/fdutils.h b/runtime/bin/fdutils.h
index 93bebfb..25cd4dd 100644
--- a/runtime/bin/fdutils.h
+++ b/runtime/bin/fdutils.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_FDUTILS_H_
-#define BIN_FDUTILS_H_
+#ifndef RUNTIME_BIN_FDUTILS_H_
+#define RUNTIME_BIN_FDUTILS_H_
 
 #include "bin/builtin.h"
 #include "platform/globals.h"
@@ -47,4 +47,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_FDUTILS_H_
+#endif  // RUNTIME_BIN_FDUTILS_H_
diff --git a/runtime/bin/file.h b/runtime/bin/file.h
index aa37ba5..3cce143 100644
--- a/runtime/bin/file.h
+++ b/runtime/bin/file.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_FILE_H_
-#define BIN_FILE_H_
+#ifndef RUNTIME_BIN_FILE_H_
+#define RUNTIME_BIN_FILE_H_
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -243,4 +243,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_FILE_H_
+#endif  // RUNTIME_BIN_FILE_H_
diff --git a/runtime/bin/file_system_watcher.h b/runtime/bin/file_system_watcher.h
index 5026da7..6bad471 100644
--- a/runtime/bin/file_system_watcher.h
+++ b/runtime/bin/file_system_watcher.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_FILE_SYSTEM_WATCHER_H_
-#define BIN_FILE_SYSTEM_WATCHER_H_
+#ifndef RUNTIME_BIN_FILE_SYSTEM_WATCHER_H_
+#define RUNTIME_BIN_FILE_SYSTEM_WATCHER_H_
 
 #if defined(DART_IO_DISABLED)
 #error "file_system_watcher.h can only be included on builds with IO enabled"
@@ -57,5 +57,5 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_FILE_SYSTEM_WATCHER_H_
+#endif  // RUNTIME_BIN_FILE_SYSTEM_WATCHER_H_
 
diff --git a/runtime/bin/file_system_watcher_android.cc b/runtime/bin/file_system_watcher_android.cc
index 4c0380e..6843734 100644
--- a/runtime/bin/file_system_watcher_android.cc
+++ b/runtime/bin/file_system_watcher_android.cc
@@ -120,7 +120,7 @@
   while (offset < bytes) {
     struct inotify_event* e =
         reinterpret_cast<struct inotify_event*>(buffer + offset);
-    if ((e->mask & IN_IGNORED) == 0) {;
+    if ((e->mask & IN_IGNORED) == 0) {
       Dart_Handle event = Dart_NewList(5);
       int mask = InotifyEventToMask(e);
       Dart_ListSetAt(event, 0, Dart_NewInteger(mask));
diff --git a/runtime/bin/file_system_watcher_linux.cc b/runtime/bin/file_system_watcher_linux.cc
index ef4eaef..2f5179b 100644
--- a/runtime/bin/file_system_watcher_linux.cc
+++ b/runtime/bin/file_system_watcher_linux.cc
@@ -121,7 +121,7 @@
   while (offset < bytes) {
     struct inotify_event* e =
         reinterpret_cast<struct inotify_event*>(buffer + offset);
-    if ((e->mask & IN_IGNORED) == 0) {;
+    if ((e->mask & IN_IGNORED) == 0) {
       Dart_Handle event = Dart_NewList(5);
       int mask = InotifyEventToMask(e);
       Dart_ListSetAt(event, 0, Dart_NewInteger(mask));
diff --git a/runtime/bin/filter.h b/runtime/bin/filter.h
index 28c229f..54693c0 100644
--- a/runtime/bin/filter.h
+++ b/runtime/bin/filter.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_FILTER_H_
-#define BIN_FILTER_H_
+#ifndef RUNTIME_BIN_FILTER_H_
+#define RUNTIME_BIN_FILTER_H_
 
 #if defined(DART_IO_DISABLED)
 #error "filter.h can only be included on builds with IO enabled"
@@ -113,4 +113,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_FILTER_H_
+#endif  // RUNTIME_BIN_FILTER_H_
diff --git a/runtime/bin/io_buffer.h b/runtime/bin/io_buffer.h
index fe38932..ddd60d4 100644
--- a/runtime/bin/io_buffer.h
+++ b/runtime/bin/io_buffer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_IO_BUFFER_H_
-#define BIN_IO_BUFFER_H_
+#ifndef RUNTIME_BIN_IO_BUFFER_H_
+#define RUNTIME_BIN_IO_BUFFER_H_
 
 #include "include/dart_api.h"
 #include "platform/globals.h"
@@ -41,4 +41,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_IO_BUFFER_H_
+#endif  // RUNTIME_BIN_IO_BUFFER_H_
diff --git a/runtime/bin/io_natives.h b/runtime/bin/io_natives.h
index c17dce5..0c64e59 100644
--- a/runtime/bin/io_natives.h
+++ b/runtime/bin/io_natives.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_IO_NATIVES_H_
-#define BIN_IO_NATIVES_H_
+#ifndef RUNTIME_BIN_IO_NATIVES_H_
+#define RUNTIME_BIN_IO_NATIVES_H_
 
 #include "include/dart_api.h"
 
@@ -19,4 +19,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_IO_NATIVES_H_
+#endif  // RUNTIME_BIN_IO_NATIVES_H_
diff --git a/runtime/bin/io_service.h b/runtime/bin/io_service.h
index 209561a..01d6eac 100644
--- a/runtime/bin/io_service.h
+++ b/runtime/bin/io_service.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_IO_SERVICE_H_
-#define BIN_IO_SERVICE_H_
+#ifndef RUNTIME_BIN_IO_SERVICE_H_
+#define RUNTIME_BIN_IO_SERVICE_H_
 
 #if defined(DART_IO_DISABLED) || defined(DART_IO_SECURE_SOCKET_DISABLED)
 #error "io_service.h can only be included on builds with IO and SSL enabled"
@@ -77,4 +77,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_IO_SERVICE_H_
+#endif  // RUNTIME_BIN_IO_SERVICE_H_
diff --git a/runtime/bin/io_service_no_ssl.h b/runtime/bin/io_service_no_ssl.h
index b8cb545..ae3d0c2 100644
--- a/runtime/bin/io_service_no_ssl.h
+++ b/runtime/bin/io_service_no_ssl.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_IO_SERVICE_NO_SSL_H_
-#define BIN_IO_SERVICE_NO_SSL_H_
+#ifndef RUNTIME_BIN_IO_SERVICE_NO_SSL_H_
+#define RUNTIME_BIN_IO_SERVICE_NO_SSL_H_
 
 #if defined(DART_IO_DISABLED) || !defined(DART_IO_SECURE_SOCKET_DISABLED)
 #error "io_service_no_ssl.h can only be included on builds with IO enabled"
@@ -78,4 +78,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_IO_SERVICE_NO_SSL_H_
+#endif  // RUNTIME_BIN_IO_SERVICE_NO_SSL_H_
diff --git a/runtime/bin/isolate_data.h b/runtime/bin/isolate_data.h
index bb60740..fe76e51 100644
--- a/runtime/bin/isolate_data.h
+++ b/runtime/bin/isolate_data.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_ISOLATE_DATA_H_
-#define BIN_ISOLATE_DATA_H_
+#ifndef RUNTIME_BIN_ISOLATE_DATA_H_
+#define RUNTIME_BIN_ISOLATE_DATA_H_
 
 #include "include/dart_api.h"
 #include "platform/assert.h"
@@ -97,4 +97,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_ISOLATE_DATA_H_
+#endif  // RUNTIME_BIN_ISOLATE_DATA_H_
diff --git a/runtime/bin/loader.h b/runtime/bin/loader.h
index 4fe6ac0..6ddf49f 100644
--- a/runtime/bin/loader.h
+++ b/runtime/bin/loader.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_LOADER_H_
-#define BIN_LOADER_H_
+#ifndef RUNTIME_BIN_LOADER_H_
+#define RUNTIME_BIN_LOADER_H_
 
 #include "bin/isolate_data.h"
 #include "include/dart_api.h"
@@ -146,4 +146,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_LOADER_H_
+#endif  // RUNTIME_BIN_LOADER_H_
diff --git a/runtime/bin/lockers.h b/runtime/bin/lockers.h
index 0aefd99..836eeda 100644
--- a/runtime/bin/lockers.h
+++ b/runtime/bin/lockers.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_LOCKERS_H_
-#define BIN_LOCKERS_H_
+#ifndef RUNTIME_BIN_LOCKERS_H_
+#define RUNTIME_BIN_LOCKERS_H_
 
 #include "bin/thread.h"
 #include "platform/assert.h"
@@ -61,4 +61,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_LOCKERS_H_
+#endif  // RUNTIME_BIN_LOCKERS_H_
diff --git a/runtime/bin/log.h b/runtime/bin/log.h
index 51a4379..022dd1b 100644
--- a/runtime/bin/log.h
+++ b/runtime/bin/log.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_LOG_H_
-#define BIN_LOG_H_
+#ifndef RUNTIME_BIN_LOG_H_
+#define RUNTIME_BIN_LOG_H_
 
 #include <stdarg.h>
 
@@ -41,4 +41,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_LOG_H_
+#endif  // RUNTIME_BIN_LOG_H_
diff --git a/runtime/bin/platform.h b/runtime/bin/platform.h
index 1f52ef9..cf220e4 100644
--- a/runtime/bin/platform.h
+++ b/runtime/bin/platform.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_PLATFORM_H_
-#define BIN_PLATFORM_H_
+#ifndef RUNTIME_BIN_PLATFORM_H_
+#define RUNTIME_BIN_PLATFORM_H_
 
 #include "bin/builtin.h"
 #include "platform/globals.h"
@@ -107,4 +107,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_PLATFORM_H_
+#endif  // RUNTIME_BIN_PLATFORM_H_
diff --git a/runtime/bin/process.h b/runtime/bin/process.h
index 359c8c1..2886e71 100644
--- a/runtime/bin/process.h
+++ b/runtime/bin/process.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_PROCESS_H_
-#define BIN_PROCESS_H_
+#ifndef RUNTIME_BIN_PROCESS_H_
+#define RUNTIME_BIN_PROCESS_H_
 
 #include "bin/builtin.h"
 #include "bin/io_buffer.h"
@@ -294,4 +294,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_PROCESS_H_
+#endif  // RUNTIME_BIN_PROCESS_H_
diff --git a/runtime/bin/process_patch.dart b/runtime/bin/process_patch.dart
index bfb09db..d34a28c 100644
--- a/runtime/bin/process_patch.dart
+++ b/runtime/bin/process_patch.dart
@@ -125,9 +125,9 @@
     }
   }
 
-  @patch static _setSignalHandler(int signal)
+  static _setSignalHandler(int signal)
       native "Process_SetSignalHandler";
-  @patch static int _clearSignalHandler(int signal)
+  static int _clearSignalHandler(int signal)
       native "Process_ClearSignalHandler";
 }
 
diff --git a/runtime/bin/reference_counting.h b/runtime/bin/reference_counting.h
index 8e79f4f..6a6a9e6 100644
--- a/runtime/bin/reference_counting.h
+++ b/runtime/bin/reference_counting.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_REFERENCE_COUNTING_H_
-#define BIN_REFERENCE_COUNTING_H_
+#ifndef RUNTIME_BIN_REFERENCE_COUNTING_H_
+#define RUNTIME_BIN_REFERENCE_COUNTING_H_
 
 #include "vm/atomic.h"
 
@@ -156,4 +156,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_REFERENCE_COUNTING_H_
+#endif  // RUNTIME_BIN_REFERENCE_COUNTING_H_
diff --git a/runtime/bin/secure_socket.h b/runtime/bin/secure_socket.h
index 5dfee9e..e01df41 100644
--- a/runtime/bin/secure_socket.h
+++ b/runtime/bin/secure_socket.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SECURE_SOCKET_H_
-#define BIN_SECURE_SOCKET_H_
+#ifndef RUNTIME_BIN_SECURE_SOCKET_H_
+#define RUNTIME_BIN_SECURE_SOCKET_H_
 
 #if defined(DART_IO_DISABLED) || defined(DART_IO_SECURE_SOCKET_DISABLED)
 #error "secure_socket.h can only be included on builds with SSL enabled"
@@ -24,4 +24,4 @@
 #error Unknown target os.
 #endif
 
-#endif  // BIN_SECURE_SOCKET_H_
+#endif  // RUNTIME_BIN_SECURE_SOCKET_H_
diff --git a/runtime/bin/secure_socket_boringssl.h b/runtime/bin/secure_socket_boringssl.h
index 788b257..fe7bd8d 100644
--- a/runtime/bin/secure_socket_boringssl.h
+++ b/runtime/bin/secure_socket_boringssl.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SECURE_SOCKET_BORINGSSL_H_
-#define BIN_SECURE_SOCKET_BORINGSSL_H_
+#ifndef RUNTIME_BIN_SECURE_SOCKET_BORINGSSL_H_
+#define RUNTIME_BIN_SECURE_SOCKET_BORINGSSL_H_
 
-#if !defined(BIN_SECURE_SOCKET_H_)
+#if !defined(RUNTIME_BIN_SECURE_SOCKET_H_)
 #error Do not include secure_socket_boringssl.h directly. Use secure_socket.h.
 #endif
 
@@ -162,4 +162,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_SECURE_SOCKET_BORINGSSL_H_
+#endif  // RUNTIME_BIN_SECURE_SOCKET_BORINGSSL_H_
diff --git a/runtime/bin/secure_socket_ios.h b/runtime/bin/secure_socket_ios.h
index d67de71..84e46e1 100644
--- a/runtime/bin/secure_socket_ios.h
+++ b/runtime/bin/secure_socket_ios.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SECURE_SOCKET_IOS_H_
-#define BIN_SECURE_SOCKET_IOS_H_
+#ifndef RUNTIME_BIN_SECURE_SOCKET_IOS_H_
+#define RUNTIME_BIN_SECURE_SOCKET_IOS_H_
 
-#if !defined(BIN_SECURE_SOCKET_H_)
+#if !defined(RUNTIME_BIN_SECURE_SOCKET_H_)
 #error Do not include secure_socket_macos.h directly. Use secure_socket.h.
 #endif
 
@@ -237,4 +237,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_SECURE_SOCKET_IOS_H_
+#endif  // RUNTIME_BIN_SECURE_SOCKET_IOS_H_
diff --git a/runtime/bin/secure_socket_macos.h b/runtime/bin/secure_socket_macos.h
index b4fe635..ae8f2e8 100644
--- a/runtime/bin/secure_socket_macos.h
+++ b/runtime/bin/secure_socket_macos.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SECURE_SOCKET_MACOS_H_
-#define BIN_SECURE_SOCKET_MACOS_H_
+#ifndef RUNTIME_BIN_SECURE_SOCKET_MACOS_H_
+#define RUNTIME_BIN_SECURE_SOCKET_MACOS_H_
 
-#if !defined(BIN_SECURE_SOCKET_H_)
+#if !defined(RUNTIME_BIN_SECURE_SOCKET_H_)
 #error Do not include secure_socket_macos.h directly. Use secure_socket.h.
 #endif
 
@@ -278,4 +278,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_SECURE_SOCKET_MACOS_H_
+#endif  // RUNTIME_BIN_SECURE_SOCKET_MACOS_H_
diff --git a/runtime/bin/socket.h b/runtime/bin/socket.h
index ea8dade..7b3985e 100644
--- a/runtime/bin/socket.h
+++ b/runtime/bin/socket.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SOCKET_H_
-#define BIN_SOCKET_H_
+#ifndef RUNTIME_BIN_SOCKET_H_
+#define RUNTIME_BIN_SOCKET_H_
 
 #if defined(DART_IO_DISABLED)
 #error "socket.h can only be included on builds with IO enabled"
@@ -475,4 +475,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_SOCKET_H_
+#endif  // RUNTIME_BIN_SOCKET_H_
diff --git a/runtime/bin/socket_android.h b/runtime/bin/socket_android.h
index 13ff16e..43fddc1 100644
--- a/runtime/bin/socket_android.h
+++ b/runtime/bin/socket_android.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SOCKET_ANDROID_H_
-#define BIN_SOCKET_ANDROID_H_
+#ifndef RUNTIME_BIN_SOCKET_ANDROID_H_
+#define RUNTIME_BIN_SOCKET_ANDROID_H_
 
-#if !defined(BIN_SOCKET_H_)
+#if !defined(RUNTIME_BIN_SOCKET_H_)
 #error Do not include socket_android.h directly. Use socket.h.
 #endif
 
@@ -13,4 +13,4 @@
 #include <netdb.h>
 #include <sys/socket.h>
 
-#endif  // BIN_SOCKET_ANDROID_H_
+#endif  // RUNTIME_BIN_SOCKET_ANDROID_H_
diff --git a/runtime/bin/socket_fuchsia.cc b/runtime/bin/socket_fuchsia.cc
index b79d1c0..b3935eb 100644
--- a/runtime/bin/socket_fuchsia.cc
+++ b/runtime/bin/socket_fuchsia.cc
@@ -115,7 +115,12 @@
 AddressList<SocketAddress>* Socket::LookupAddress(const char* host,
                                                   int type,
                                                   OSError** os_error) {
-  UNIMPLEMENTED();
+  // UNIMPLEMENTED
+  ASSERT(*os_error == NULL);
+  *os_error = new OSError(-1,
+                          "Socket::LookupAddress not implemented in "
+                          "Fuchsia Dart VM runtime",
+                          OSError::kGetAddressInfo);
   return NULL;
 }
 
diff --git a/runtime/bin/socket_fuchsia.h b/runtime/bin/socket_fuchsia.h
index 82f8916..64c8545 100644
--- a/runtime/bin/socket_fuchsia.h
+++ b/runtime/bin/socket_fuchsia.h
@@ -2,11 +2,11 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SOCKET_FUCHSIA_H_
-#define BIN_SOCKET_FUCHSIA_H_
+#ifndef RUNTIME_BIN_SOCKET_FUCHSIA_H_
+#define RUNTIME_BIN_SOCKET_FUCHSIA_H_
 
-#if !defined(BIN_SOCKET_H_)
+#if !defined(RUNTIME_BIN_SOCKET_H_)
 #error Do not include socket_fuchsia.h directly. Use socket.h.
 #endif
 
-#endif  // BIN_SOCKET_FUCHSIA_H_
+#endif  // RUNTIME_BIN_SOCKET_FUCHSIA_H_
diff --git a/runtime/bin/socket_linux.h b/runtime/bin/socket_linux.h
index 5d073c4..e153f88 100644
--- a/runtime/bin/socket_linux.h
+++ b/runtime/bin/socket_linux.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SOCKET_LINUX_H_
-#define BIN_SOCKET_LINUX_H_
+#ifndef RUNTIME_BIN_SOCKET_LINUX_H_
+#define RUNTIME_BIN_SOCKET_LINUX_H_
 
-#if !defined(BIN_SOCKET_H_)
+#if !defined(RUNTIME_BIN_SOCKET_H_)
 #error Do not include socket_linux.h directly. Use socket.h.
 #endif
 
@@ -13,4 +13,4 @@
 #include <netdb.h>
 #include <sys/socket.h>
 
-#endif  // BIN_SOCKET_LINUX_H_
+#endif  // RUNTIME_BIN_SOCKET_LINUX_H_
diff --git a/runtime/bin/socket_macos.h b/runtime/bin/socket_macos.h
index dce6d97..b3ab619 100644
--- a/runtime/bin/socket_macos.h
+++ b/runtime/bin/socket_macos.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SOCKET_MACOS_H_
-#define BIN_SOCKET_MACOS_H_
+#ifndef RUNTIME_BIN_SOCKET_MACOS_H_
+#define RUNTIME_BIN_SOCKET_MACOS_H_
 
-#if !defined(BIN_SOCKET_H_)
+#if !defined(RUNTIME_BIN_SOCKET_H_)
 #error Do not include socket_macos.h directly. Use socket.h.
 #endif
 
@@ -13,4 +13,4 @@
 #include <netdb.h>
 #include <sys/socket.h>
 
-#endif  // BIN_SOCKET_MACOS_H_
+#endif  // RUNTIME_BIN_SOCKET_MACOS_H_
diff --git a/runtime/bin/socket_win.h b/runtime/bin/socket_win.h
index 7b71e38..38aeea2 100644
--- a/runtime/bin/socket_win.h
+++ b/runtime/bin/socket_win.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_SOCKET_WIN_H_
-#define BIN_SOCKET_WIN_H_
+#ifndef RUNTIME_BIN_SOCKET_WIN_H_
+#define RUNTIME_BIN_SOCKET_WIN_H_
 
-#if !defined(BIN_SOCKET_H_)
+#if !defined(RUNTIME_BIN_SOCKET_H_)
 #error Do not include socket_win.h directly. Use socket.h.
 #endif
 
@@ -14,4 +14,4 @@
 #include <winsock2.h>
 #include <ws2tcpip.h>
 
-#endif  // BIN_SOCKET_WIN_H_
+#endif  // RUNTIME_BIN_SOCKET_WIN_H_
diff --git a/runtime/bin/stdio.h b/runtime/bin/stdio.h
index 55884df..9bf079a 100644
--- a/runtime/bin/stdio.h
+++ b/runtime/bin/stdio.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_STDIO_H_
-#define BIN_STDIO_H_
+#ifndef RUNTIME_BIN_STDIO_H_
+#define RUNTIME_BIN_STDIO_H_
 
 #if defined(DART_IO_DISABLED)
 #error "stdio.h can only be included on builds with IO enabled"
@@ -45,4 +45,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_STDIO_H_
+#endif  // RUNTIME_BIN_STDIO_H_
diff --git a/runtime/bin/stdio_patch.dart b/runtime/bin/stdio_patch.dart
index b3dc68e..392ae1c 100644
--- a/runtime/bin/stdio_patch.dart
+++ b/runtime/bin/stdio_patch.dart
@@ -3,7 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 
 @patch class _StdIOUtils {
-  static Stdin _getStdioInputStream() {
+  @patch static Stdin _getStdioInputStream() {
     switch (_getStdioHandleType(0)) {
       case _STDIO_HANDLE_TYPE_TERMINAL:
       case _STDIO_HANDLE_TYPE_PIPE:
@@ -16,7 +16,7 @@
     }
   }
 
-  static _getStdioOutputStream(int fd) {
+  @patch static _getStdioOutputStream(int fd) {
     assert(fd == 1 || fd == 2);
     switch (_getStdioHandleType(fd)) {
       case _STDIO_HANDLE_TYPE_TERMINAL:
@@ -29,12 +29,12 @@
     }
   }
 
-  static int _socketType(Socket socket) {
+  @patch static int _socketType(Socket socket) {
     if (socket is _Socket) return _nativeSocketType(socket._nativeSocket);
     return null;
   }
 
-  static int _nativeSocketType(_NativeSocket nativeSocket) {
+  @patch static int _nativeSocketType(_NativeSocket nativeSocket) {
     var result = _getSocketType(nativeSocket);
     if (result is OSError) {
       throw new FileSystemException(
@@ -43,7 +43,7 @@
     return result;
   }
 
-  static _getStdioHandleType(int fd) native "File_GetStdioHandleType";
+  @patch static _getStdioHandleType(int fd) native "File_GetStdioHandleType";
 }
 
 @patch class Stdin {
diff --git a/runtime/bin/thread.h b/runtime/bin/thread.h
index 37a4b9f..365cd95 100644
--- a/runtime/bin/thread.h
+++ b/runtime/bin/thread.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_THREAD_H_
-#define BIN_THREAD_H_
+#ifndef RUNTIME_BIN_THREAD_H_
+#define RUNTIME_BIN_THREAD_H_
 
 #include "platform/globals.h"
 
@@ -114,4 +114,4 @@
 }  // namespace dart
 
 
-#endif  // BIN_THREAD_H_
+#endif  // RUNTIME_BIN_THREAD_H_
diff --git a/runtime/bin/thread_android.h b/runtime/bin/thread_android.h
index 2551c01..154339c 100644
--- a/runtime/bin/thread_android.h
+++ b/runtime/bin/thread_android.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_THREAD_ANDROID_H_
-#define BIN_THREAD_ANDROID_H_
+#ifndef RUNTIME_BIN_THREAD_ANDROID_H_
+#define RUNTIME_BIN_THREAD_ANDROID_H_
 
-#if !defined(BIN_THREAD_H_)
+#if !defined(RUNTIME_BIN_THREAD_H_)
 #error Do not include thread_android.h directly; use thread.h instead.
 #endif
 
@@ -74,4 +74,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_THREAD_ANDROID_H_
+#endif  // RUNTIME_BIN_THREAD_ANDROID_H_
diff --git a/runtime/bin/thread_fuchsia.h b/runtime/bin/thread_fuchsia.h
index 6168719..2923a514 100644
--- a/runtime/bin/thread_fuchsia.h
+++ b/runtime/bin/thread_fuchsia.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_THREAD_FUCHSIA_H_
-#define BIN_THREAD_FUCHSIA_H_
+#ifndef RUNTIME_BIN_THREAD_FUCHSIA_H_
+#define RUNTIME_BIN_THREAD_FUCHSIA_H_
 
-#if !defined(BIN_THREAD_H_)
+#if !defined(RUNTIME_BIN_THREAD_H_)
 #error Do not include thread_fuchsia.h directly; use thread.h instead.
 #endif
 
@@ -74,4 +74,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_THREAD_FUCHSIA_H_
+#endif  // RUNTIME_BIN_THREAD_FUCHSIA_H_
diff --git a/runtime/bin/thread_linux.h b/runtime/bin/thread_linux.h
index 9f4093c..403c353 100644
--- a/runtime/bin/thread_linux.h
+++ b/runtime/bin/thread_linux.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_THREAD_LINUX_H_
-#define BIN_THREAD_LINUX_H_
+#ifndef RUNTIME_BIN_THREAD_LINUX_H_
+#define RUNTIME_BIN_THREAD_LINUX_H_
 
-#if !defined(BIN_THREAD_H_)
+#if !defined(RUNTIME_BIN_THREAD_H_)
 #error Do not include thread_linux.h directly; use thread.h instead.
 #endif
 
@@ -74,4 +74,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_THREAD_LINUX_H_
+#endif  // RUNTIME_BIN_THREAD_LINUX_H_
diff --git a/runtime/bin/thread_macos.h b/runtime/bin/thread_macos.h
index a074896..419bc8b 100644
--- a/runtime/bin/thread_macos.h
+++ b/runtime/bin/thread_macos.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_THREAD_MACOS_H_
-#define BIN_THREAD_MACOS_H_
+#ifndef RUNTIME_BIN_THREAD_MACOS_H_
+#define RUNTIME_BIN_THREAD_MACOS_H_
 
-#if !defined(BIN_THREAD_H_)
+#if !defined(RUNTIME_BIN_THREAD_H_)
 #error Do not include thread_macos.h directly; use thread.h instead.
 #endif
 
@@ -74,4 +74,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_THREAD_MACOS_H_
+#endif  // RUNTIME_BIN_THREAD_MACOS_H_
diff --git a/runtime/bin/thread_win.h b/runtime/bin/thread_win.h
index 5e1dba51..85ab38f 100644
--- a/runtime/bin/thread_win.h
+++ b/runtime/bin/thread_win.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_THREAD_WIN_H_
-#define BIN_THREAD_WIN_H_
+#ifndef RUNTIME_BIN_THREAD_WIN_H_
+#define RUNTIME_BIN_THREAD_WIN_H_
 
-#if !defined(BIN_THREAD_H_)
+#if !defined(RUNTIME_BIN_THREAD_H_)
 #error Do not include thread_win.h directly; use thread.h instead.
 #endif
 
@@ -119,4 +119,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_THREAD_WIN_H_
+#endif  // RUNTIME_BIN_THREAD_WIN_H_
diff --git a/runtime/bin/utils.h b/runtime/bin/utils.h
index 5311d36..18b1db2 100644
--- a/runtime/bin/utils.h
+++ b/runtime/bin/utils.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_UTILS_H_
-#define BIN_UTILS_H_
+#ifndef RUNTIME_BIN_UTILS_H_
+#define RUNTIME_BIN_UTILS_H_
 
 #include <stdlib.h>
 #include <string.h>
@@ -123,4 +123,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_UTILS_H_
+#endif  // RUNTIME_BIN_UTILS_H_
diff --git a/runtime/bin/utils_win.h b/runtime/bin/utils_win.h
index 3e7fa4c..2f63faf 100644
--- a/runtime/bin/utils_win.h
+++ b/runtime/bin/utils_win.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_UTILS_WIN_H_
-#define BIN_UTILS_WIN_H_
+#ifndef RUNTIME_BIN_UTILS_WIN_H_
+#define RUNTIME_BIN_UTILS_WIN_H_
 
 #include "platform/globals.h"
 
@@ -95,4 +95,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_UTILS_WIN_H_
+#endif  // RUNTIME_BIN_UTILS_WIN_H_
diff --git a/runtime/bin/vmservice_dartium.h b/runtime/bin/vmservice_dartium.h
index 11067ee..b1287f8 100644
--- a/runtime/bin/vmservice_dartium.h
+++ b/runtime/bin/vmservice_dartium.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_VMSERVICE_DARTIUM_H_
-#define BIN_VMSERVICE_DARTIUM_H_
+#ifndef RUNTIME_BIN_VMSERVICE_DARTIUM_H_
+#define RUNTIME_BIN_VMSERVICE_DARTIUM_H_
 
 /* In order to avoid conflicts / issues with blink, no headers are included */
 
@@ -38,4 +38,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_VMSERVICE_DARTIUM_H_
+#endif  // RUNTIME_BIN_VMSERVICE_DARTIUM_H_
diff --git a/runtime/bin/vmservice_impl.h b/runtime/bin/vmservice_impl.h
index f499abf..5c03c33 100644
--- a/runtime/bin/vmservice_impl.h
+++ b/runtime/bin/vmservice_impl.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef BIN_VMSERVICE_IMPL_H_
-#define BIN_VMSERVICE_IMPL_H_
+#ifndef RUNTIME_BIN_VMSERVICE_IMPL_H_
+#define RUNTIME_BIN_VMSERVICE_IMPL_H_
 
 #include "include/dart_api.h"
 
@@ -59,4 +59,4 @@
 }  // namespace bin
 }  // namespace dart
 
-#endif  // BIN_VMSERVICE_IMPL_H_
+#endif  // RUNTIME_BIN_VMSERVICE_IMPL_H_
diff --git a/runtime/bin/zlib/BUILD.gn b/runtime/bin/zlib/BUILD.gn
index ad78238..8950ae1 100644
--- a/runtime/bin/zlib/BUILD.gn
+++ b/runtime/bin/zlib/BUILD.gn
@@ -49,8 +49,6 @@
   all_dependent_configs = [ ":zlib_config" ]
 
   if (is_clang) {
-    cflags = [
-      "-Wno-shift-negative-value",
-    ]
+    cflags = [ "-Wno-shift-negative-value" ]
   }
 }
diff --git a/runtime/include/dart_api.h b/runtime/include/dart_api.h
index 25db8c4..105bb66 100755
--- a/runtime/include/dart_api.h
+++ b/runtime/include/dart_api.h
@@ -4,8 +4,8 @@
  * BSD-style license that can be found in the LICENSE file.
  */
 
-#ifndef INCLUDE_DART_API_H_
-#define INCLUDE_DART_API_H_
+#ifndef RUNTIME_INCLUDE_DART_API_H_
+#define RUNTIME_INCLUDE_DART_API_H_
 
 /** \mainpage Dart Embedding API Reference
  *
diff --git a/runtime/include/dart_mirrors_api.h b/runtime/include/dart_mirrors_api.h
index 3a4c9ce..e0f57e0 100644
--- a/runtime/include/dart_mirrors_api.h
+++ b/runtime/include/dart_mirrors_api.h
@@ -4,8 +4,8 @@
  * BSD-style license that can be found in the LICENSE file.
  */
 
-#ifndef INCLUDE_DART_MIRRORS_API_H_
-#define INCLUDE_DART_MIRRORS_API_H_
+#ifndef RUNTIME_INCLUDE_DART_MIRRORS_API_H_
+#define RUNTIME_INCLUDE_DART_MIRRORS_API_H_
 
 #include "include/dart_api.h"
 
diff --git a/runtime/include/dart_native_api.h b/runtime/include/dart_native_api.h
index 74237c1..f1e0ca1 100644
--- a/runtime/include/dart_native_api.h
+++ b/runtime/include/dart_native_api.h
@@ -4,8 +4,8 @@
  * BSD-style license that can be found in the LICENSE file.
  */
 
-#ifndef INCLUDE_DART_NATIVE_API_H_
-#define INCLUDE_DART_NATIVE_API_H_
+#ifndef RUNTIME_INCLUDE_DART_NATIVE_API_H_
+#define RUNTIME_INCLUDE_DART_NATIVE_API_H_
 
 #include "include/dart_api.h"
 
diff --git a/runtime/include/dart_tools_api.h b/runtime/include/dart_tools_api.h
index edf8918..73c923e 100644
--- a/runtime/include/dart_tools_api.h
+++ b/runtime/include/dart_tools_api.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef INCLUDE_DART_TOOLS_API_H_
-#define INCLUDE_DART_TOOLS_API_H_
+#ifndef RUNTIME_INCLUDE_DART_TOOLS_API_H_
+#define RUNTIME_INCLUDE_DART_TOOLS_API_H_
 
 #include "include/dart_api.h"
 
@@ -1087,4 +1087,4 @@
     Dart_EmbedderTimelineStartRecording start_recording,
     Dart_EmbedderTimelineStopRecording stop_recording);
 
-#endif  // INCLUDE_DART_TOOLS_API_H_
+#endif  // RUNTIME_INCLUDE_DART_TOOLS_API_H_
diff --git a/runtime/lib/collection_patch.dart b/runtime/lib/collection_patch.dart
index ed76535..0dea145 100644
--- a/runtime/lib/collection_patch.dart
+++ b/runtime/lib/collection_patch.dart
@@ -2,10 +2,13 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
+import 'dart:typed_data';
+import 'dart:_internal' as internal;
+
 @patch class HashMap<K, V> {
   @patch factory HashMap({ bool equals(K key1, K key2),
-                                 int hashCode(K key),
-                                 bool isValidKey(potentialKey) }) {
+                           int hashCode(K key),
+                           bool isValidKey(potentialKey) }) {
     if (isValidKey == null) {
       if (hashCode == null) {
         if (equals == null) {
diff --git a/runtime/lib/collection_sources.gypi b/runtime/lib/collection_sources.gypi
index 0e1e21e..8576980 100644
--- a/runtime/lib/collection_sources.gypi
+++ b/runtime/lib/collection_sources.gypi
@@ -4,6 +4,8 @@
 
 {
   'sources': [
+    # collection_patch.dart needs to be the first dart file because it contains
+    # imports.
     'collection_patch.dart',
     'compact_hash.dart',
     'linked_hash_map.cc',
diff --git a/runtime/lib/compact_hash.dart b/runtime/lib/compact_hash.dart
index 9912d07..86ec9d8 100644
--- a/runtime/lib/compact_hash.dart
+++ b/runtime/lib/compact_hash.dart
@@ -2,9 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'dart:typed_data';
-import 'dart:_internal' as internal;
-
 // Hash table with open addressing that separates the index from keys/values.
 
 abstract class _HashFieldBase {
diff --git a/runtime/lib/core_patch.dart b/runtime/lib/core_patch.dart
index f06c98b..29357ae 100644
--- a/runtime/lib/core_patch.dart
+++ b/runtime/lib/core_patch.dart
@@ -2,8 +2,13 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
+import "dart:async";
+import "dart:collection" show LinkedList, LinkedListEntry;
+import 'dart:convert' show ASCII, JSON;
+import "dart:isolate";
 import "dart:math";
 import "dart:typed_data";
+import 'dart:_internal' as internal;
 
 // Equivalent of calling FATAL from C++ code.
 _fatal(msg) native "DartCore_fatal";
diff --git a/runtime/lib/developer.dart b/runtime/lib/developer.dart
index ec3d38b..4c6ea7d 100644
--- a/runtime/lib/developer.dart
+++ b/runtime/lib/developer.dart
@@ -3,6 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'dart:isolate';
+import 'dart:_internal';
 
 @patch bool debugger({bool when: true,
                      String message}) native "Developer_debugger";
diff --git a/runtime/lib/developer_sources.gypi b/runtime/lib/developer_sources.gypi
index e3f1ea6..896f2e1 100644
--- a/runtime/lib/developer_sources.gypi
+++ b/runtime/lib/developer_sources.gypi
@@ -7,6 +7,8 @@
 {
   'sources': [
     'developer.cc',
+    # developer.dart needs to be the first dart file because it contains
+    # imports.
     'developer.dart',
     'profiler.cc',
     'profiler.dart',
diff --git a/runtime/lib/errors.cc b/runtime/lib/errors.cc
index 28d4ef4..b039efa 100644
--- a/runtime/lib/errors.cc
+++ b/runtime/lib/errors.cc
@@ -7,9 +7,49 @@
 #include "vm/object_store.h"
 #include "vm/runtime_entry.h"
 #include "vm/stack_frame.h"
+#include "vm/symbols.h"
 
 namespace dart {
 
+// Scan the stack until we hit the first function in the _AssertionError
+// class. We then return the next frame's script taking inlining into account.
+static RawScript* FindScript(DartFrameIterator* iterator) {
+  StackFrame* stack_frame = iterator->NextFrame();
+  Code& code = Code::Handle();
+  Function& func = Function::Handle();
+  const Class& assert_error_class = Class::Handle(
+        Library::LookupCoreClass(Symbols::AssertionError()));
+  ASSERT(!assert_error_class.IsNull());
+  bool hit_assertion_error = false;
+  while (stack_frame != NULL) {
+    code ^= stack_frame->LookupDartCode();
+    if (code.is_optimized()) {
+      InlinedFunctionsIterator inlined_iterator(code, stack_frame->pc());
+      while (!inlined_iterator.Done()) {
+        func ^= inlined_iterator.function();
+        if (hit_assertion_error) {
+          return func.script();
+        }
+        ASSERT(!hit_assertion_error);
+        hit_assertion_error = (func.Owner() == assert_error_class.raw());
+        inlined_iterator.Advance();
+      }
+    } else {
+      func ^= code.function();
+      ASSERT(!func.IsNull());
+      if (hit_assertion_error) {
+        return func.script();
+      }
+      ASSERT(!hit_assertion_error);
+      hit_assertion_error = (func.Owner() == assert_error_class.raw());
+    }
+    stack_frame = iterator->NextFrame();
+  }
+  UNREACHABLE();
+  return Script::null();
+}
+
+
 // Allocate and throw a new AssertionError.
 // Arg0: index of the first token of the failed assertion.
 // Arg1: index of the first token after the failed assertion.
@@ -26,8 +66,7 @@
 
   DartFrameIterator iterator;
   iterator.NextFrame();  // Skip native call.
-  iterator.NextFrame();  // Skip _AssertionError._checkAssertion frame
-  const Script& script = Script::Handle(Exceptions::GetCallerScript(&iterator));
+  const Script& script = Script::Handle(FindScript(&iterator));
 
   // Initialize argument 'failed_assertion' with source snippet.
   intptr_t from_line, from_column;
diff --git a/runtime/lib/errors_patch.dart b/runtime/lib/errors_patch.dart
index 654dfa3..bf04059 100644
--- a/runtime/lib/errors_patch.dart
+++ b/runtime/lib/errors_patch.dart
@@ -2,9 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'dart:_internal' as internal;
-import 'dart:convert' show JSON;
-
 @patch class Error {
   @patch static String _objectToString(Object object) {
     return Object._toString(object);
@@ -206,6 +203,7 @@
   // that no information is available.
   final int _invocation_type;
 
+  @patch
   NoSuchMethodError(Object this._receiver,
                     Symbol this._memberName,
                     List this._arguments,
diff --git a/runtime/lib/integers_patch.dart b/runtime/lib/integers_patch.dart
index 67db176..6f8b384 100644
--- a/runtime/lib/integers_patch.dart
+++ b/runtime/lib/integers_patch.dart
@@ -5,8 +5,6 @@
 
 // VM implementation of int.
 
-import 'dart:_internal' as internal;
-
 @patch class int {
 
   @patch const factory int.fromEnvironment(String name,
diff --git a/runtime/lib/invocation_mirror.h b/runtime/lib/invocation_mirror.h
index 78d1ba4..b2b152e8 100644
--- a/runtime/lib/invocation_mirror.h
+++ b/runtime/lib/invocation_mirror.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef LIB_INVOCATION_MIRROR_H_
-#define LIB_INVOCATION_MIRROR_H_
+#ifndef RUNTIME_LIB_INVOCATION_MIRROR_H_
+#define RUNTIME_LIB_INVOCATION_MIRROR_H_
 
 #include "vm/allocation.h"
 
@@ -47,4 +47,4 @@
 
 }  // namespace dart
 
-#endif  // LIB_INVOCATION_MIRROR_H_
+#endif  // RUNTIME_LIB_INVOCATION_MIRROR_H_
diff --git a/runtime/lib/lib_prefix.dart b/runtime/lib/lib_prefix.dart
index f457b02..1b0e87d 100644
--- a/runtime/lib/lib_prefix.dart
+++ b/runtime/lib/lib_prefix.dart
@@ -2,9 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import "dart:async";
-import "dart:isolate";
-
 // This type corresponds to the VM-internal class LibraryPrefix.
 class _LibraryPrefix {
   bool _load() native "LibraryPrefix_load";
diff --git a/runtime/lib/mirrors.h b/runtime/lib/mirrors.h
index 40bd5d5..31f0d22 100644
--- a/runtime/lib/mirrors.h
+++ b/runtime/lib/mirrors.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef LIB_MIRRORS_H_
-#define LIB_MIRRORS_H_
+#ifndef RUNTIME_LIB_MIRRORS_H_
+#define RUNTIME_LIB_MIRRORS_H_
 
 #include "vm/allocation.h"
 
@@ -32,4 +32,4 @@
 
 }  // namespace dart
 
-#endif  // LIB_MIRRORS_H_
+#endif  // RUNTIME_LIB_MIRRORS_H_
diff --git a/runtime/lib/mirrors_impl.dart b/runtime/lib/mirrors_impl.dart
index 8fdd7ba..0305f12 100644
--- a/runtime/lib/mirrors_impl.dart
+++ b/runtime/lib/mirrors_impl.dart
@@ -4,9 +4,6 @@
 
 // VM-specific implementation of the dart:mirrors library.
 
-import "dart:collection" show UnmodifiableListView, UnmodifiableMapView;
-import "dart:async" show Future;
-
 var dirty = false;
 final emptyList = new UnmodifiableListView([]);
 final emptyMap = new UnmodifiableMapView({});
diff --git a/runtime/lib/mirrors_patch.dart b/runtime/lib/mirrors_patch.dart
index 2e2da5b..03bd1b6 100644
--- a/runtime/lib/mirrors_patch.dart
+++ b/runtime/lib/mirrors_patch.dart
@@ -2,6 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
+import "dart:async" show Future;
+import "dart:collection" show UnmodifiableListView, UnmodifiableMapView;
 import "dart:_internal" as internal;
 
 /**
diff --git a/runtime/lib/mirrors_sources.gypi b/runtime/lib/mirrors_sources.gypi
index 295ab85..46da082 100644
--- a/runtime/lib/mirrors_sources.gypi
+++ b/runtime/lib/mirrors_sources.gypi
@@ -8,6 +8,8 @@
   'sources': [
     'mirrors.cc',
     'mirrors.h',
+    # mirrors_patch.dart needs to be the first dart file because it contains
+    # imports.
     'mirrors_patch.dart',
     'mirrors_impl.dart',
     'mirror_reference.dart',
diff --git a/runtime/lib/null_patch.dart b/runtime/lib/null_patch.dart
index 312804e..0f22e67 100644
--- a/runtime/lib/null_patch.dart
+++ b/runtime/lib/null_patch.dart
@@ -5,14 +5,7 @@
 // Dart core library.
 
 @patch class Null {
-
-  factory Null._uninstantiable() {
-    throw new UnsupportedError("class Null cannot be instantiated");
-  }
-
   static const _HASH_CODE = 2011; // The year Dart was announced and a prime.
   int get hashCode => _HASH_CODE;
   int get _identityHashCode => _HASH_CODE;
-
-  String toString() => 'null';
 }
diff --git a/runtime/lib/object_patch.dart b/runtime/lib/object_patch.dart
index 0af593d..8959feb 100644
--- a/runtime/lib/object_patch.dart
+++ b/runtime/lib/object_patch.dart
@@ -5,7 +5,7 @@
 @patch class Object {
 
   // The VM has its own implementation of equals.
-  bool operator ==(other) native "Object_equals";
+  @patch bool operator ==(other) native "Object_equals";
 
   // Helpers used to implement hashCode. If a hashCode is used, we remember it
   // in a weak table in the VM. A new hashCode value is calculated using a
diff --git a/runtime/lib/profiler.dart b/runtime/lib/profiler.dart
index 2a085c2..b60760a 100644
--- a/runtime/lib/profiler.dart
+++ b/runtime/lib/profiler.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'dart:_internal';
-
 @patch class UserTag {
   @patch factory UserTag(String label) {
     return new _UserTag(label);
diff --git a/runtime/lib/regexp_patch.dart b/runtime/lib/regexp_patch.dart
index 7e8bc19..a9ccd55 100644
--- a/runtime/lib/regexp_patch.dart
+++ b/runtime/lib/regexp_patch.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import "dart:collection" show LinkedList, LinkedListEntry;
-
 @patch class RegExp {
   @patch factory RegExp(String source,
                               {bool multiLine: false,
diff --git a/runtime/lib/stacktrace.h b/runtime/lib/stacktrace.h
index c3b16e4..e6bccae 100644
--- a/runtime/lib/stacktrace.h
+++ b/runtime/lib/stacktrace.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef LIB_STACKTRACE_H_
-#define LIB_STACKTRACE_H_
+#ifndef RUNTIME_LIB_STACKTRACE_H_
+#define RUNTIME_LIB_STACKTRACE_H_
 
 namespace dart {
 
@@ -18,4 +18,4 @@
 
 }  // namespace dart
 
-#endif  // LIB_STACKTRACE_H_
+#endif  // RUNTIME_LIB_STACKTRACE_H_
diff --git a/runtime/lib/timeline.dart b/runtime/lib/timeline.dart
index da5760e..b2aa165 100644
--- a/runtime/lib/timeline.dart
+++ b/runtime/lib/timeline.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'dart:_internal';
-
 @patch bool _isDartStreamEnabled() native "Timeline_isDartStreamEnabled";
 
 @patch int _getTraceClock() native "Timeline_getTraceClock";
diff --git a/runtime/lib/typed_data.dart b/runtime/lib/typed_data.dart
index c010555..0875fbc 100644
--- a/runtime/lib/typed_data.dart
+++ b/runtime/lib/typed_data.dart
@@ -2,6 +2,9 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
+// Unlike the other SDK libraries, this file is not a patch that is applied to
+// dart:typed_data.  Instead, it completely replaces the implementation from the
+// SDK.
 library dart.typed_data;
 
 import "dart:_internal";
diff --git a/runtime/lib/uri_patch.dart b/runtime/lib/uri_patch.dart
index 0ce6b11..27e5efd 100644
--- a/runtime/lib/uri_patch.dart
+++ b/runtime/lib/uri_patch.dart
@@ -2,8 +2,6 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import "dart:convert" show ASCII;
-
 // VM implementation of Uri.
 typedef Uri _UriBaseClosure();
 
diff --git a/runtime/observatory/BUILD.gn b/runtime/observatory/BUILD.gn
index fc7af6a..5058eed 100644
--- a/runtime/observatory/BUILD.gn
+++ b/runtime/observatory/BUILD.gn
@@ -16,15 +16,12 @@
 # Helper build rules for packaging the Dart observatory resources.
 observatory_sources_gypi =
     exec_script("../../tools/gypi_to_gn.py",
-                [ rebase_path(
-                    "../observatory/observatory_sources.gypi") ],
+                [ rebase_path("../observatory/observatory_sources.gypi") ],
                 "scope",
                 [ "../observatory/observatory_sources.gypi" ])
 
 copy("copy_observatory") {
-  sources = rebase_path(observatory_sources_gypi.sources,
-                        "",
-                        ".")
+  sources = rebase_path(observatory_sources_gypi.sources, "", ".")
   outputs = [
     "$root_gen_dir/observatory_copy/{{source_root_relative_dir}}/{{source_file_part}}",
   ]
@@ -51,8 +48,7 @@
     "--command",
     "rewrite",
     rebase_path("../observatory/pubspec.yaml"),
-    rebase_path(
-        "$root_gen_dir/observatory_copy/$current_dir/pubspec.yaml"),
+    rebase_path("$root_gen_dir/observatory_copy/$current_dir/pubspec.yaml"),
     "../../third_party/",
     rebase_path("../../third_party/"),
   ]
@@ -94,10 +90,9 @@
 
 action("pub_build_observatory") {
   current_dir = rebase_path(".", "//")
-  sources =
-      rebase_path(observatory_sources_gypi.sources,
-                  "",
-                  "$root_gen_dir/observatory_copy/$current_dir")
+  sources = rebase_path(observatory_sources_gypi.sources,
+                        "",
+                        "$root_gen_dir/observatory_copy/$current_dir")
 
   deps = [
     ":copy_observatory",
@@ -184,10 +179,14 @@
       rebase_path("$root_gen_dir/observatory/${output_name}.cc"),
       "--tar_output",
       rebase_path("$root_gen_dir/observatory/${output_name}.tar"),
-      "--outer_namespace", outer_namespace,
-      "--inner_namespace", inner_namespace,
-      "--name", "observatory_assets_archive",
-      "--client_root", rebase_path("$root_out_dir/observatory/deployed/web/"),
+      "--outer_namespace",
+      outer_namespace,
+      "--inner_namespace",
+      inner_namespace,
+      "--name",
+      "observatory_assets_archive",
+      "--client_root",
+      rebase_path("$root_out_dir/observatory/deployed/web/"),
     ]
     if (enable_compression) {
       args += [ "--compress" ]
diff --git a/runtime/platform/address_sanitizer.h b/runtime/platform/address_sanitizer.h
index 37346fc..584f3a5 100644
--- a/runtime/platform/address_sanitizer.h
+++ b/runtime/platform/address_sanitizer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_ADDRESS_SANITIZER_H_
-#define PLATFORM_ADDRESS_SANITIZER_H_
+#ifndef RUNTIME_PLATFORM_ADDRESS_SANITIZER_H_
+#define RUNTIME_PLATFORM_ADDRESS_SANITIZER_H_
 
 #include "platform/globals.h"
 
@@ -20,4 +20,4 @@
 #define ASAN_UNPOISON(ptr, len) do {} while (false && (ptr) == 0 && (len) == 0)
 #endif  // defined(__has_feature)
 
-#endif  // PLATFORM_ADDRESS_SANITIZER_H_
+#endif  // RUNTIME_PLATFORM_ADDRESS_SANITIZER_H_
diff --git a/runtime/platform/assert.h b/runtime/platform/assert.h
index 81cb7f1..1d35327 100644
--- a/runtime/platform/assert.h
+++ b/runtime/platform/assert.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_ASSERT_H_
-#define PLATFORM_ASSERT_H_
+#ifndef RUNTIME_PLATFORM_ASSERT_H_
+#define RUNTIME_PLATFORM_ASSERT_H_
 
 // TODO(5411406): include sstream for now, once we have a Utils::toString()
 // implemented for all the primitive types we can replace the usage of
@@ -379,4 +379,4 @@
 
 #endif  // defined(TESTING)
 
-#endif  // PLATFORM_ASSERT_H_
+#endif  // RUNTIME_PLATFORM_ASSERT_H_
diff --git a/runtime/platform/c99_support_win.h b/runtime/platform/c99_support_win.h
index c01c248..d90f34d 100644
--- a/runtime/platform/c99_support_win.h
+++ b/runtime/platform/c99_support_win.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_C99_SUPPORT_WIN_H_
-#define PLATFORM_C99_SUPPORT_WIN_H_
+#ifndef RUNTIME_PLATFORM_C99_SUPPORT_WIN_H_
+#define RUNTIME_PLATFORM_C99_SUPPORT_WIN_H_
 
 #if defined(_MSC_VER) && (_MSC_VER < 1800)
 
@@ -79,4 +79,4 @@
 
 #endif
 
-#endif  // PLATFORM_C99_SUPPORT_WIN_H_
+#endif  // RUNTIME_PLATFORM_C99_SUPPORT_WIN_H_
diff --git a/runtime/platform/floating_point.h b/runtime/platform/floating_point.h
index 7adaa73..24d2f9c 100644
--- a/runtime/platform/floating_point.h
+++ b/runtime/platform/floating_point.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_FLOATING_POINT_H_
-#define PLATFORM_FLOATING_POINT_H_
+#ifndef RUNTIME_PLATFORM_FLOATING_POINT_H_
+#define RUNTIME_PLATFORM_FLOATING_POINT_H_
 
 inline double fmod_ieee(double x, double y) { return fmod(x, y); }
 inline double atan2_ieee(double y, double x) { return atan2(y, x); }
 
-#endif  // PLATFORM_FLOATING_POINT_H_
+#endif  // RUNTIME_PLATFORM_FLOATING_POINT_H_
diff --git a/runtime/platform/floating_point_win.cc b/runtime/platform/floating_point_win.cc
index 009da2a..76ce626 100644
--- a/runtime/platform/floating_point_win.cc
+++ b/runtime/platform/floating_point_win.cc
@@ -5,6 +5,8 @@
 #include "platform/globals.h"
 #if defined(TARGET_OS_WINDOWS)
 
+#include "platform/floating_point_win.h"
+
 #include <limits>  // NOLINT
 
 // Taken from third_party/v8/src/platform-win32.cc
diff --git a/runtime/platform/floating_point_win.h b/runtime/platform/floating_point_win.h
index a97051a..8fab8ae 100644
--- a/runtime/platform/floating_point_win.h
+++ b/runtime/platform/floating_point_win.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_FLOATING_POINT_WIN_H_
-#define PLATFORM_FLOATING_POINT_WIN_H_
+#ifndef RUNTIME_PLATFORM_FLOATING_POINT_WIN_H_
+#define RUNTIME_PLATFORM_FLOATING_POINT_WIN_H_
 
 double atan2_ieee(double x, double y);
 double fmod_ieee(double x, double y);
 
-#endif  // PLATFORM_FLOATING_POINT_WIN_H_
+#endif  // RUNTIME_PLATFORM_FLOATING_POINT_WIN_H_
diff --git a/runtime/platform/globals.h b/runtime/platform/globals.h
index cd01fc5..8503221 100644
--- a/runtime/platform/globals.h
+++ b/runtime/platform/globals.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_GLOBALS_H_
-#define PLATFORM_GLOBALS_H_
+#ifndef RUNTIME_PLATFORM_GLOBALS_H_
+#define RUNTIME_PLATFORM_GLOBALS_H_
 
 // __STDC_FORMAT_MACROS has to be defined before including <inttypes.h> to
 // enable platform independent printf format specifiers.
@@ -713,4 +713,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_GLOBALS_H_
+#endif  // RUNTIME_PLATFORM_GLOBALS_H_
diff --git a/runtime/platform/hashmap.h b/runtime/platform/hashmap.h
index 185c75f..1cd8a4a 100644
--- a/runtime/platform/hashmap.h
+++ b/runtime/platform/hashmap.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_HASHMAP_H_
-#define PLATFORM_HASHMAP_H_
+#ifndef RUNTIME_PLATFORM_HASHMAP_H_
+#define RUNTIME_PLATFORM_HASHMAP_H_
 
 #include "platform/globals.h"
 
@@ -105,4 +105,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_HASHMAP_H_
+#endif  // RUNTIME_PLATFORM_HASHMAP_H_
diff --git a/runtime/platform/inttypes_support_win.h b/runtime/platform/inttypes_support_win.h
index 34d83a4..06d4053 100644
--- a/runtime/platform/inttypes_support_win.h
+++ b/runtime/platform/inttypes_support_win.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_INTTYPES_SUPPORT_WIN_H_
-#define PLATFORM_INTTYPES_SUPPORT_WIN_H_
+#ifndef RUNTIME_PLATFORM_INTTYPES_SUPPORT_WIN_H_
+#define RUNTIME_PLATFORM_INTTYPES_SUPPORT_WIN_H_
 
 typedef signed __int8 int8_t;
 typedef signed __int16 int16_t;
@@ -24,4 +24,4 @@
 #define PRIu64 "I64u"
 #define PRIx64 "I64x"
 
-#endif  // PLATFORM_INTTYPES_SUPPORT_WIN_H_
+#endif  // RUNTIME_PLATFORM_INTTYPES_SUPPORT_WIN_H_
diff --git a/runtime/platform/math.h b/runtime/platform/math.h
index 0dc34008..1edf3e3 100644
--- a/runtime/platform/math.h
+++ b/runtime/platform/math.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_MATH_H_
-#define PLATFORM_MATH_H_
+#ifndef RUNTIME_PLATFORM_MATH_H_
+#define RUNTIME_PLATFORM_MATH_H_
 
 // We must take these math functions from the C++ header file as long as we
 // are using the STL. Otherwise the Android build will break due to confusion
@@ -20,4 +20,4 @@
 #include <math.h>
 #endif
 
-#endif  // PLATFORM_MATH_H_
+#endif  // RUNTIME_PLATFORM_MATH_H_
diff --git a/runtime/platform/memory_sanitizer.h b/runtime/platform/memory_sanitizer.h
index fe05ed1..dddfe31 100644
--- a/runtime/platform/memory_sanitizer.h
+++ b/runtime/platform/memory_sanitizer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_MEMORY_SANITIZER_H_
-#define PLATFORM_MEMORY_SANITIZER_H_
+#ifndef RUNTIME_PLATFORM_MEMORY_SANITIZER_H_
+#define RUNTIME_PLATFORM_MEMORY_SANITIZER_H_
 
 #include "platform/globals.h"
 
@@ -23,4 +23,4 @@
 #define NO_SANITIZE_MEMORY
 #endif  // defined(__has_feature)
 
-#endif  // PLATFORM_MEMORY_SANITIZER_H_
+#endif  // RUNTIME_PLATFORM_MEMORY_SANITIZER_H_
diff --git a/runtime/platform/signal_blocker.h b/runtime/platform/signal_blocker.h
index 45d09aa..28c22ac 100644
--- a/runtime/platform/signal_blocker.h
+++ b/runtime/platform/signal_blocker.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_SIGNAL_BLOCKER_H_
-#define PLATFORM_SIGNAL_BLOCKER_H_
+#ifndef RUNTIME_PLATFORM_SIGNAL_BLOCKER_H_
+#define RUNTIME_PLATFORM_SIGNAL_BLOCKER_H_
 
 #include "platform/globals.h"
 #include "platform/assert.h"
@@ -105,4 +105,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_SIGNAL_BLOCKER_H_
+#endif  // RUNTIME_PLATFORM_SIGNAL_BLOCKER_H_
diff --git a/runtime/platform/text_buffer.h b/runtime/platform/text_buffer.h
index 973ca7e..5689f0f 100644
--- a/runtime/platform/text_buffer.h
+++ b/runtime/platform/text_buffer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_TEXT_BUFFER_H_
-#define PLATFORM_TEXT_BUFFER_H_
+#ifndef RUNTIME_PLATFORM_TEXT_BUFFER_H_
+#define RUNTIME_PLATFORM_TEXT_BUFFER_H_
 
 #include "vm/allocation.h"
 #include "vm/globals.h"
@@ -45,4 +45,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_TEXT_BUFFER_H_
+#endif  // RUNTIME_PLATFORM_TEXT_BUFFER_H_
diff --git a/runtime/platform/utils.h b/runtime/platform/utils.h
index 65bc14f..b67c96e 100644
--- a/runtime/platform/utils.h
+++ b/runtime/platform/utils.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_UTILS_H_
-#define PLATFORM_UTILS_H_
+#ifndef RUNTIME_PLATFORM_UTILS_H_
+#define RUNTIME_PLATFORM_UTILS_H_
 
 #include "platform/assert.h"
 #include "platform/globals.h"
@@ -227,4 +227,4 @@
 #error Unknown target os.
 #endif
 
-#endif  // PLATFORM_UTILS_H_
+#endif  // RUNTIME_PLATFORM_UTILS_H_
diff --git a/runtime/platform/utils_android.h b/runtime/platform/utils_android.h
index 7709442..4bd2a38 100644
--- a/runtime/platform/utils_android.h
+++ b/runtime/platform/utils_android.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_UTILS_ANDROID_H_
-#define PLATFORM_UTILS_ANDROID_H_
+#ifndef RUNTIME_PLATFORM_UTILS_ANDROID_H_
+#define RUNTIME_PLATFORM_UTILS_ANDROID_H_
 
 #include <endian.h>  // NOLINT
 
@@ -69,4 +69,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_UTILS_ANDROID_H_
+#endif  // RUNTIME_PLATFORM_UTILS_ANDROID_H_
diff --git a/runtime/platform/utils_fuchsia.h b/runtime/platform/utils_fuchsia.h
index 575c3db..4143daf 100644
--- a/runtime/platform/utils_fuchsia.h
+++ b/runtime/platform/utils_fuchsia.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_UTILS_FUCHSIA_H_
-#define PLATFORM_UTILS_FUCHSIA_H_
+#ifndef RUNTIME_PLATFORM_UTILS_FUCHSIA_H_
+#define RUNTIME_PLATFORM_UTILS_FUCHSIA_H_
 
 #include <endian.h>
 
@@ -70,4 +70,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_UTILS_FUCHSIA_H_
+#endif  // RUNTIME_PLATFORM_UTILS_FUCHSIA_H_
diff --git a/runtime/platform/utils_linux.h b/runtime/platform/utils_linux.h
index bb9594f..5be126d 100644
--- a/runtime/platform/utils_linux.h
+++ b/runtime/platform/utils_linux.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_UTILS_LINUX_H_
-#define PLATFORM_UTILS_LINUX_H_
+#ifndef RUNTIME_PLATFORM_UTILS_LINUX_H_
+#define RUNTIME_PLATFORM_UTILS_LINUX_H_
 
 #include <endian.h>  // NOLINT
 
@@ -77,4 +77,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_UTILS_LINUX_H_
+#endif  // RUNTIME_PLATFORM_UTILS_LINUX_H_
diff --git a/runtime/platform/utils_macos.h b/runtime/platform/utils_macos.h
index 7c2a966..2a8e39f 100644
--- a/runtime/platform/utils_macos.h
+++ b/runtime/platform/utils_macos.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_UTILS_MACOS_H_
-#define PLATFORM_UTILS_MACOS_H_
+#ifndef RUNTIME_PLATFORM_UTILS_MACOS_H_
+#define RUNTIME_PLATFORM_UTILS_MACOS_H_
 
 #include <libkern/OSByteOrder.h>  // NOLINT
 
@@ -69,4 +69,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_UTILS_MACOS_H_
+#endif  // RUNTIME_PLATFORM_UTILS_MACOS_H_
diff --git a/runtime/platform/utils_win.h b/runtime/platform/utils_win.h
index 7d7b96e..92b7f98 100644
--- a/runtime/platform/utils_win.h
+++ b/runtime/platform/utils_win.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef PLATFORM_UTILS_WIN_H_
-#define PLATFORM_UTILS_WIN_H_
+#ifndef RUNTIME_PLATFORM_UTILS_WIN_H_
+#define RUNTIME_PLATFORM_UTILS_WIN_H_
 
 #include <intrin.h>
 #include <stdlib.h>
@@ -67,4 +67,4 @@
 
 }  // namespace dart
 
-#endif  // PLATFORM_UTILS_WIN_H_
+#endif  // RUNTIME_PLATFORM_UTILS_WIN_H_
diff --git a/runtime/third_party/double-conversion/src/BUILD.gn b/runtime/third_party/double-conversion/src/BUILD.gn
index 5aaa53b..7888623 100644
--- a/runtime/third_party/double-conversion/src/BUILD.gn
+++ b/runtime/third_party/double-conversion/src/BUILD.gn
@@ -2,14 +2,13 @@
 # for details. All rights reserved. Use of this source code is governed by a
 # BSD-style license that can be found in the LICENSE file.
 
-
 static_library("libdouble_conversion") {
-  configs += [ "../../..:dart_config", ]
+  configs += [ "../../..:dart_config" ]
   sources = [
-    "bignum.cc",
-    "bignum.h",
     "bignum-dtoa.cc",
     "bignum-dtoa.h",
+    "bignum.cc",
+    "bignum.h",
     "cached-powers.cc",
     "cached-powers.h",
     "diy-fp.cc",
@@ -25,8 +24,5 @@
     "strtod.h",
     "utils.h",
   ]
-  include_dirs = [
-    ".",
-  ]
+  include_dirs = [ "." ]
 }
-
diff --git a/runtime/tools/concatenate_patches.py b/runtime/tools/concatenate_patches.py
new file mode 100755
index 0000000..1653066
--- /dev/null
+++ b/runtime/tools/concatenate_patches.py
@@ -0,0 +1,30 @@
+#!/usr/bin/env python
+# Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+# for details. All rights reserved. Use of this source code is governed by a
+# BSD-style license that can be found in the LICENSE file.
+
+from optparse import OptionParser
+
+def writePatch(output_file_name, input_file_names):
+  dart_file_names = filter(lambda name: name.endswith('.dart'),
+                           input_file_names)
+  with open(output_file_name, 'w') as output_file:
+    for dart_file_name in dart_file_names:
+      with open(dart_file_name, 'r') as dart_file:
+        output_file.write(dart_file.read())
+
+
+def main():
+  parser = OptionParser()
+  parser.add_option('--output', action='store', type='string',
+                    help='output file path')
+  (options, args) = parser.parse_args()
+  if not options.output:
+    parser.error('missing --output option\n')
+  if len(args) == 0:
+    parser.error('no input files given\n')
+  writePatch(options.output, args)
+
+
+if __name__ == '__main__':
+  main()
diff --git a/runtime/vm/BUILD.gn b/runtime/vm/BUILD.gn
index d7edae6..71fe87e 100644
--- a/runtime/vm/BUILD.gn
+++ b/runtime/vm/BUILD.gn
@@ -4,9 +4,7 @@
 
 config("libdart_vm_config") {
   if (defined(is_fuchsia) && is_fuchsia) {
-    libs = [
-      "magenta",
-    ]
+    libs = [ "magenta" ]
   } else if (is_win) {
     libs = [
       "advapi32.lib",
@@ -16,7 +14,7 @@
   } else {
     libs = [ "dl" ]
     if (!is_android) {
-      libs += [ "pthread"]
+      libs += [ "pthread" ]
     }
     if (is_linux) {
       libs += [ "rt" ]
@@ -24,122 +22,157 @@
   }
 }
 
-
 static_library("libdart_platform") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config"]
-  public_configs = [":libdart_vm_config"]
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+  ]
+  public_configs = [ ":libdart_vm_config" ]
 
   platform_headers_gypi =
       exec_script("../../tools/gypi_to_gn.py",
-                  [rebase_path("../platform/platform_headers.gypi")],
+                  [ rebase_path("../platform/platform_headers.gypi") ],
                   "scope",
-                  ["../platform/platform_headers.gypi"])
+                  [ "../platform/platform_headers.gypi" ])
   platform_headers =
       rebase_path(platform_headers_gypi.sources, ".", "../platform")
 
   platform_sources_gypi =
       exec_script("../../tools/gypi_to_gn.py",
-                  [rebase_path("../platform/platform_sources.gypi")],
+                  [ rebase_path("../platform/platform_sources.gypi") ],
                   "scope",
-                  ["../platform/platform_sources.gypi"])
+                  [ "../platform/platform_sources.gypi" ])
   platform_sources =
       rebase_path(platform_sources_gypi.sources, ".", "../platform")
 
   sources = platform_headers + platform_sources
-  include_dirs = [
-    "..",
-  ]
+  include_dirs = [ ".." ]
 }
 
-
 vm_sources_list = exec_script("../../tools/gypi_to_gn.py",
-                              [rebase_path("vm_sources.gypi")],
+                              [ rebase_path("vm_sources.gypi") ],
                               "scope",
-                              ["vm_sources.gypi"])
-
+                              [ "vm_sources.gypi" ])
 
 static_library("libdart_vm") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config",
-              "..:dart_maybe_precompiled_runtime_config"]
-  public_configs = [":libdart_vm_config"]
-  set_sources_assignment_filter(["*_test.cc", "*_test.h"])
-  sources = vm_sources_list.sources
-  include_dirs = [
-    "..",
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+    "..:dart_maybe_precompiled_runtime_config",
   ]
+  public_configs = [ ":libdart_vm_config" ]
+  set_sources_assignment_filter([
+                                  "*_test.cc",
+                                  "*_test.h",
+                                ])
+  sources = vm_sources_list.sources
+  include_dirs = [ ".." ]
 }
 
-
 static_library("libdart_vm_noopt") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config",
-              "..:dart_precompiler_config",
-              "..:dart_maybe_precompiled_runtime_config"]
-  public_configs = [":libdart_vm_config"]
-  set_sources_assignment_filter(["*_test.cc", "*_test.h"])
-  sources = vm_sources_list.sources
-  include_dirs = [
-    "..",
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+    "..:dart_precompiler_config",
+    "..:dart_maybe_precompiled_runtime_config",
   ]
+  public_configs = [ ":libdart_vm_config" ]
+  set_sources_assignment_filter([
+                                  "*_test.cc",
+                                  "*_test.h",
+                                ])
+  sources = vm_sources_list.sources
+  include_dirs = [ ".." ]
 }
 
-
 static_library("libdart_vm_precompiled_runtime") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config",
-              "..:dart_precompiled_runtime_config"]
-  public_configs = [":libdart_vm_config"]
-  set_sources_assignment_filter(["*_test.cc", "*_test.h"])
-  sources = vm_sources_list.sources
-  include_dirs = [
-    "..",
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+    "..:dart_precompiled_runtime_config",
   ]
+  public_configs = [ ":libdart_vm_config" ]
+  set_sources_assignment_filter([
+                                  "*_test.cc",
+                                  "*_test.h",
+                                ])
+  sources = vm_sources_list.sources
+  include_dirs = [ ".." ]
 }
 
-
 static_library("libdart_vm_nosnapshot") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config",
-              "..:dart_maybe_precompiled_runtime_config",
-              "..:dart_no_snapshot_config",]
-  public_configs = [":libdart_vm_config"]
-  set_sources_assignment_filter(["*_test.cc", "*_test.h"])
-  sources = vm_sources_list.sources
-  include_dirs = [
-    "..",
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+    "..:dart_maybe_precompiled_runtime_config",
+    "..:dart_no_snapshot_config",
   ]
+  public_configs = [ ":libdart_vm_config" ]
+  set_sources_assignment_filter([
+                                  "*_test.cc",
+                                  "*_test.h",
+                                ])
+  sources = vm_sources_list.sources
+  include_dirs = [ ".." ]
 }
 
-
 static_library("libdart_vm_nosnapshot_precompiled_runtime") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config",
-              "..:dart_precompiled_runtime_config",
-              "..:dart_no_snapshot_config",]
-  public_configs = [":libdart_vm_config"]
-  set_sources_assignment_filter(["*_test.cc", "*_test.h"])
-  sources = vm_sources_list.sources
-  include_dirs = [
-    "..",
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+    "..:dart_precompiled_runtime_config",
+    "..:dart_no_snapshot_config",
   ]
+  public_configs = [ ":libdart_vm_config" ]
+  set_sources_assignment_filter([
+                                  "*_test.cc",
+                                  "*_test.h",
+                                ])
+  sources = vm_sources_list.sources
+  include_dirs = [ ".." ]
 }
 
-
 static_library("libdart_vm_nosnapshot_with_precompiler") {
-  configs += ["..:dart_config",
-              "..:dart_maybe_product_config",
-              "..:dart_precompiler_config",
-              "..:dart_no_snapshot_config",]
-  public_configs = [":libdart_vm_config"]
-  set_sources_assignment_filter(["*_test.cc", "*_test.h"])
-  sources = vm_sources_list.sources
-  include_dirs = [
-    "..",
+  configs += [
+    "..:dart_config",
+    "..:dart_maybe_product_config",
+    "..:dart_precompiler_config",
+    "..:dart_no_snapshot_config",
   ]
+  public_configs = [ ":libdart_vm_config" ]
+  set_sources_assignment_filter([
+                                  "*_test.cc",
+                                  "*_test.h",
+                                ])
+  sources = vm_sources_list.sources
+  include_dirs = [ ".." ]
 }
 
+template("process_library_source") {
+  assert(defined(invoker.filename), "Need filename in $target_name")
+  assert(defined(invoker.output), "Need output in $target_name")
+  assert(defined(invoker.path), "Need path in $target_name")
+  action(target_name) {
+    visibility = [ ":*" ]  # Only targets in this file can see this.
+    filename = invoker.filename
+    path = invoker.path
+
+    lib_sources_gypi =
+        exec_script("../../tools/gypi_to_gn.py",
+                    [ rebase_path("${path}/${filename}_sources.gypi") ],
+                    "scope",
+                    [ "${path}/${filename}_sources.gypi" ])
+    lib_sources = rebase_path(lib_sources_gypi.sources, ".", path)
+
+    script = invoker.script
+    inputs = invoker.inputs + [ script ]
+    inputs += lib_sources
+    outputs = [
+      invoker.output,
+    ]
+    args = invoker.args + rebase_path(lib_sources, root_build_dir)
+  }
+}
 
 template("generate_library_source") {
   assert(defined(invoker.libname), "Need libname in $target_name")
@@ -147,39 +180,32 @@
   assert(defined(invoker.kind), "Need kind in $target_name")
   assert(defined(invoker.output), "Need output in $target_name")
   assert(defined(invoker.path), "Need path in $target_name")
-  action(target_name) {
-    visibility = [ ":*" ]  # Only targets in this file can see this.
+
+  process_library_source(target_name) {
     libname = invoker.libname
     filename = invoker.filename
     kind = invoker.kind
+    output = invoker.output
     path = invoker.path
-
-    lib_sources_gypi =
-        exec_script("../../tools/gypi_to_gn.py",
-                    [rebase_path("${path}/${filename}_sources.gypi")],
-                    "scope",
-                    ["${path}/${filename}_sources.gypi"])
-    lib_sources =
-        rebase_path(lib_sources_gypi.sources, ".", path)
-
     script = "../tools/gen_library_src_paths.py"
     inputs = [
-      "../tools/gen_library_src_paths.py",
       "../lib/libgen_in.cc",
     ]
-    inputs += lib_sources
-    outputs = [ invoker.output, ]
     args = [
-      "--output", rebase_path(invoker.output, root_build_dir),
-      "--input_cc", rebase_path("../lib/libgen_in.cc", root_build_dir),
-      "--include", "vm/bootstrap.h",
-      "--var_name", "dart::Bootstrap::${libname}_${kind}_paths_",
-      "--library_name", "dart:${libname}",] +
-      rebase_path(lib_sources, root_build_dir)
+      "--output",
+      rebase_path(invoker.output, root_build_dir),
+      "--input_cc",
+      rebase_path("../lib/libgen_in.cc", root_build_dir),
+      "--include",
+      "vm/bootstrap.h",
+      "--var_name",
+      "dart::Bootstrap::${libname}_${kind}_paths_",
+      "--library_name",
+      "dart:${libname}",
+    ]
   }
 }
 
-
 # This templates expects invoker.sources to be a list of pairs of strings.
 # The pairs of strings mean the following.
 # library name, file name
@@ -217,85 +243,298 @@
         output = "$target_gen_dir/${filename}_patch_gen.cc"
       }
     }
-    lib_sources_gypi = {}
+    lib_sources_gypi = {
+    }
     lib_sources_gypi =
         exec_script("../../tools/gypi_to_gn.py",
-                    [rebase_path("../lib/${filename}_sources.gypi")],
+                    [ rebase_path("../lib/${filename}_sources.gypi") ],
                     "scope",
-                    ["../lib/${filename}_sources.gypi"])
+                    [ "../lib/${filename}_sources.gypi" ])
     libsources += rebase_path(lib_sources_gypi.sources, ".", "../lib")
-    liboutputs += ["$target_gen_dir/${filename}_gen.cc"]
-    libdeps += [":generate_${filename}_cc_file"]
+    liboutputs += [ "$target_gen_dir/${filename}_gen.cc" ]
+    libdeps += [ ":generate_${filename}_cc_file" ]
     if (do_patch) {
-      liboutputs += ["$target_gen_dir/${filename}_patch_gen.cc"]
-      libdeps += [":generate_${filename}_patch_cc_file"]
+      liboutputs += [ "$target_gen_dir/${filename}_patch_gen.cc" ]
+      libdeps += [ ":generate_${filename}_patch_cc_file" ]
     }
   }
 
   static_library("libdart_lib_nosnapshot") {
-    configs += ["..:dart_config",
-                "..:dart_maybe_product_config",
-                "..:dart_maybe_precompiled_runtime_config"]
-    deps = libdeps
-    sources = libsources + ["bootstrap.cc"] + liboutputs
-    include_dirs = [
-      "..",
+    configs += [
+      "..:dart_config",
+      "..:dart_maybe_product_config",
+      "..:dart_maybe_precompiled_runtime_config",
     ]
+    deps = libdeps
+    sources = libsources + [ "bootstrap.cc" ] + liboutputs
+    include_dirs = [ ".." ]
   }
   static_library("libdart_lib_nosnapshot_precompiled_runtime") {
-    configs += ["..:dart_config",
-                "..:dart_maybe_product_config",
-                "..:dart_precompiled_runtime_config"]
-    deps = libdeps
-    sources = libsources + ["bootstrap.cc"] + liboutputs
-    include_dirs = [
-      "..",
+    configs += [
+      "..:dart_config",
+      "..:dart_maybe_product_config",
+      "..:dart_precompiled_runtime_config",
     ]
+    deps = libdeps
+    sources = libsources + [ "bootstrap.cc" ] + liboutputs
+    include_dirs = [ ".." ]
   }
   static_library("libdart_lib_nosnapshot_with_precompiler") {
-    configs += ["..:dart_config",
-                "..:dart_maybe_product_config",
-                "..:dart_precompiler_config" ]
-    deps = libdeps
-    sources = libsources + [ "bootstrap.cc"] + liboutputs
-    include_dirs = [
-      "..",
+    configs += [
+      "..:dart_config",
+      "..:dart_maybe_product_config",
+      "..:dart_precompiler_config",
     ]
+    deps = libdeps
+    sources = libsources + [ "bootstrap.cc" ] + liboutputs
+    include_dirs = [ ".." ]
   }
   static_library("libdart_lib") {
-    configs += ["..:dart_config",
-                "..:dart_maybe_product_config",
-                "..:dart_maybe_precompiled_runtime_config"]
-    sources = libsources + [ "bootstrap_nocore.cc"]
-    include_dirs = [
-      "..",
+    configs += [
+      "..:dart_config",
+      "..:dart_maybe_product_config",
+      "..:dart_maybe_precompiled_runtime_config",
     ]
+    sources = libsources + [ "bootstrap_nocore.cc" ]
+    include_dirs = [ ".." ]
   }
   static_library("libdart_lib_precompiled_runtime") {
-    configs += ["..:dart_config",
-                "..:dart_maybe_product_config",
-                "..:dart_precompiled_runtime_config"]
-    sources = libsources + [ "bootstrap_nocore.cc"]
-    include_dirs = [
-      "..",
+    configs += [
+      "..:dart_config",
+      "..:dart_maybe_product_config",
+      "..:dart_precompiled_runtime_config",
+    ]
+    sources = libsources + [ "bootstrap_nocore.cc" ]
+    include_dirs = [ ".." ]
+  }
+}
+
+generate_core_libraries("core_libraries") {
+  sources = [
+    [
+      "async",
+      "async",
+      true,
+      "../../sdk/lib/async",
+      "../lib",
+    ],
+    [
+      "core",
+      "core",
+      true,
+      "../../sdk/lib/core",
+      "../lib",
+    ],
+    [
+      "collection",
+      "collection",
+      true,
+      "../../sdk/lib/collection",
+      "../lib",
+    ],
+    [
+      "convert",
+      "convert",
+      true,
+      "../../sdk/lib/convert",
+      "../lib",
+    ],
+    [
+      "developer",
+      "developer",
+      true,
+      "../../sdk/lib/developer",
+      "../lib",
+    ],
+    [
+      "_internal",
+      "internal",
+      true,
+      "../../sdk/lib/internal",
+      "../lib",
+    ],
+    [
+      "isolate",
+      "isolate",
+      true,
+      "../../sdk/lib/isolate",
+      "../lib",
+    ],
+    [
+      "math",
+      "math",
+      true,
+      "../../sdk/lib/math",
+      "../lib",
+    ],
+    [
+      "mirrors",
+      "mirrors",
+      true,
+      "../../sdk/lib/mirrors",
+      "../lib",
+    ],
+    [
+      "profiler",
+      "profiler",
+      false,
+      "../../sdk/lib/profiler",
+    ],
+    [
+      "typed_data",
+      "typed_data",
+      false,
+      "../lib",
+    ],
+    [
+      "_vmservice",
+      "vmservice",
+      true,
+      "../../sdk/lib/vmservice",
+      "../lib",
+    ],
+  ]
+}
+
+template("concatenate_patch") {
+  assert(defined(invoker.libname), "Need a name in $target_name")
+  assert(defined(invoker.dir), "Need a dir in $target_name")
+  assert(defined(invoker.output), "Need an output in $target_name")
+
+  process_library_source(target_name) {
+    output = invoker.output
+    path = "../${invoker.dir}"
+    filename = invoker.libname
+    script = "../tools/concatenate_patches.py"
+    args = [
+      "--output",
+      rebase_path(output, root_build_dir),
+    ]
+    inputs = []
+  }
+}
+
+template("generate_patched_sdk") {
+  assert(defined(invoker.libraries), "Need libraries in $target_name")
+
+  concatenation_target_names = []
+  concatenation_files = []
+
+  # Concatenate vm library patches.
+  foreach(library, invoker.libraries) {
+    name = library[1]
+
+    target_output = "$target_gen_dir/patches/${name}_patch.dart"
+    concatenate_patch("concatenate_${name}_patch") {
+      libname = name
+      dir = library[0]
+      output = target_output
+    }
+    concatenation_target_names += [ ":concatenate_${name}_patch" ]
+    concatenation_files += [ target_output ]
+  }
+
+  # Build the patched sdk out of the concatenated patches and the special
+  # libraries.
+  action(target_name) {
+    deps = concatenation_target_names
+
+    patches_dir = "$target_gen_dir/patches"
+    patched_sdk_dir = "$target_gen_dir/patched_sdk"
+
+    script = "../../tools/patch_sdk.py"
+
+    # We list all files which make up the sdk (modulo patches) and get them back
+    # as a GN list object.
+    shared_sdk_sources = exec_script("../../tools/list_dart_files.py",
+                                     [ "../../sdk/lib" ],
+                                     "list lines")
+
+    # We list the `patch_sdk.dart` tool here because the [script] (which is
+    # implicitly an input) will call it.
+    inputs = [
+      "../../tools/patch_sdk.dart",
+    ]
+
+    # Files below are not patches, they will not be in [concatenation_files] but
+    # the `patch_sdk.dart` script will copy them into the patched sdk.
+    inputs += [
+      "../lib/typed_data.dart",
+      "../bin/builtin.dart",
+      "../bin/vmservice/vmservice_io.dart",
+      "../bin/vmservice/loader.dart",
+      "../bin/vmservice/server.dart",
+    ]
+
+    # Add all the normal sdk sources.
+    inputs += shared_sdk_sources
+
+    # Add all the concatenated patch files.
+    inputs += concatenation_files
+
+    outputs = [
+      # Instead of listing all outputs we list a single well-known one.
+      "${patched_sdk_dir}/lib/core/core.dart",
+    ]
+
+    args = [
+      "vm",
+      rebase_path("../../sdk"),
+      rebase_path(patches_dir, root_build_dir),
+      rebase_path(patched_sdk_dir, root_build_dir),
     ]
   }
 }
 
-
-generate_core_libraries("core_libraries") {
-  sources = [
-    ["async", "async", true, "../../sdk/lib/async", "../lib"],
-    ["core", "core", true, "../../sdk/lib/core", "../lib"],
-    ["collection", "collection", true, "../../sdk/lib/collection", "../lib"],
-    ["convert", "convert", true, "../../sdk/lib/convert", "../lib"],
-    ["developer", "developer", true, "../../sdk/lib/developer", "../lib"],
-    ["_internal", "internal", true, "../../sdk/lib/internal", "../lib"],
-    ["isolate", "isolate", true, "../../sdk/lib/isolate", "../lib"],
-    ["math", "math", true, "../../sdk/lib/math", "../lib"],
-    ["mirrors", "mirrors", true, "../../sdk/lib/mirrors", "../lib"],
-    ["profiler", "profiler", false, "../../sdk/lib/profiler"],
-    ["typed_data", "typed_data", false, "../lib"],
-    ["_vmservice", "vmservice", true, "../../sdk/lib/vmservice", "../lib"],
+generate_patched_sdk("patched_sdk") {
+  libraries = [
+    [
+      "lib",
+      "async",
+    ],
+    [
+      "lib",
+      "collection",
+    ],
+    [
+      "lib",
+      "convert",
+    ],
+    [
+      "lib",
+      "core",
+    ],
+    [
+      "lib",
+      "developer",
+    ],
+    [
+      "lib",
+      "internal",
+    ],
+    [
+      "lib",
+      "isolate",
+    ],
+    [
+      "lib",
+      "math",
+    ],
+    [
+      "lib",
+      "mirrors",
+    ],
+    [
+      "lib",
+      "profiler",
+    ],
+    [
+      "lib",
+      "vmservice",
+    ],
+    [
+      "bin",
+      "io",
+    ],
   ]
 }
diff --git a/runtime/vm/allocation.h b/runtime/vm/allocation.h
index af9a74a..448176d 100644
--- a/runtime/vm/allocation.h
+++ b/runtime/vm/allocation.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ALLOCATION_H_
-#define VM_ALLOCATION_H_
+#ifndef RUNTIME_VM_ALLOCATION_H_
+#define RUNTIME_VM_ALLOCATION_H_
 
 #include "platform/assert.h"
 #include "vm/base_isolate.h"
@@ -124,4 +124,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ALLOCATION_H_
+#endif  // RUNTIME_VM_ALLOCATION_H_
diff --git a/runtime/vm/aot_optimizer.h b/runtime/vm/aot_optimizer.h
index 6612d99..2a63a16 100644
--- a/runtime/vm/aot_optimizer.h
+++ b/runtime/vm/aot_optimizer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_AOT_OPTIMIZER_H_
-#define VM_AOT_OPTIMIZER_H_
+#ifndef RUNTIME_VM_AOT_OPTIMIZER_H_
+#define RUNTIME_VM_AOT_OPTIMIZER_H_
 
 #include "vm/intermediate_language.h"
 #include "vm/flow_graph.h"
@@ -145,4 +145,4 @@
 
 }  // namespace dart
 
-#endif  // VM_AOT_OPTIMIZER_H_
+#endif  // RUNTIME_VM_AOT_OPTIMIZER_H_
diff --git a/runtime/vm/assembler.h b/runtime/vm/assembler.h
index 36279fb..f722d09 100644
--- a/runtime/vm/assembler.h
+++ b/runtime/vm/assembler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ASSEMBLER_H_
-#define VM_ASSEMBLER_H_
+#ifndef RUNTIME_VM_ASSEMBLER_H_
+#define RUNTIME_VM_ASSEMBLER_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -348,4 +348,4 @@
 #error Unknown architecture.
 #endif
 
-#endif  // VM_ASSEMBLER_H_
+#endif  // RUNTIME_VM_ASSEMBLER_H_
diff --git a/runtime/vm/assembler_arm.h b/runtime/vm/assembler_arm.h
index 3afce46..4c17227 100644
--- a/runtime/vm/assembler_arm.h
+++ b/runtime/vm/assembler_arm.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ASSEMBLER_ARM_H_
-#define VM_ASSEMBLER_ARM_H_
+#ifndef RUNTIME_VM_ASSEMBLER_ARM_H_
+#define RUNTIME_VM_ASSEMBLER_ARM_H_
 
-#ifndef VM_ASSEMBLER_H_
+#ifndef RUNTIME_VM_ASSEMBLER_H_
 #error Do not include assembler_arm.h directly; use assembler.h instead.
 #endif
 
@@ -1178,4 +1178,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ASSEMBLER_ARM_H_
+#endif  // RUNTIME_VM_ASSEMBLER_ARM_H_
diff --git a/runtime/vm/assembler_arm64.h b/runtime/vm/assembler_arm64.h
index 1f8edfa..77d7fce 100644
--- a/runtime/vm/assembler_arm64.h
+++ b/runtime/vm/assembler_arm64.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ASSEMBLER_ARM64_H_
-#define VM_ASSEMBLER_ARM64_H_
+#ifndef RUNTIME_VM_ASSEMBLER_ARM64_H_
+#define RUNTIME_VM_ASSEMBLER_ARM64_H_
 
-#ifndef VM_ASSEMBLER_H_
+#ifndef RUNTIME_VM_ASSEMBLER_H_
 #error Do not include assembler_arm64.h directly; use assembler.h instead.
 #endif
 
@@ -1959,4 +1959,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ASSEMBLER_ARM64_H_
+#endif  // RUNTIME_VM_ASSEMBLER_ARM64_H_
diff --git a/runtime/vm/assembler_dbc.h b/runtime/vm/assembler_dbc.h
index 7e23863..d775e45 100644
--- a/runtime/vm/assembler_dbc.h
+++ b/runtime/vm/assembler_dbc.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ASSEMBLER_DBC_H_
-#define VM_ASSEMBLER_DBC_H_
+#ifndef RUNTIME_VM_ASSEMBLER_DBC_H_
+#define RUNTIME_VM_ASSEMBLER_DBC_H_
 
-#ifndef VM_ASSEMBLER_H_
+#ifndef RUNTIME_VM_ASSEMBLER_H_
 #error Do not include assembler_dbc.h directly; use assembler.h instead.
 #endif
 
@@ -196,4 +196,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ASSEMBLER_DBC_H_
+#endif  // RUNTIME_VM_ASSEMBLER_DBC_H_
diff --git a/runtime/vm/assembler_ia32.h b/runtime/vm/assembler_ia32.h
index df3d6ff..75eb1dc 100644
--- a/runtime/vm/assembler_ia32.h
+++ b/runtime/vm/assembler_ia32.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ASSEMBLER_IA32_H_
-#define VM_ASSEMBLER_IA32_H_
+#ifndef RUNTIME_VM_ASSEMBLER_IA32_H_
+#define RUNTIME_VM_ASSEMBLER_IA32_H_
 
-#ifndef VM_ASSEMBLER_H_
+#ifndef RUNTIME_VM_ASSEMBLER_H_
 #error Do not include assembler_ia32.h directly; use assembler.h instead.
 #endif
 
@@ -1025,4 +1025,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ASSEMBLER_IA32_H_
+#endif  // RUNTIME_VM_ASSEMBLER_IA32_H_
diff --git a/runtime/vm/assembler_mips.h b/runtime/vm/assembler_mips.h
index 095fa74..bc06a7a 100644
--- a/runtime/vm/assembler_mips.h
+++ b/runtime/vm/assembler_mips.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ASSEMBLER_MIPS_H_
-#define VM_ASSEMBLER_MIPS_H_
+#ifndef RUNTIME_VM_ASSEMBLER_MIPS_H_
+#define RUNTIME_VM_ASSEMBLER_MIPS_H_
 
-#ifndef VM_ASSEMBLER_H_
+#ifndef RUNTIME_VM_ASSEMBLER_H_
 #error Do not include assembler_mips.h directly; use assembler.h instead.
 #endif
 
@@ -1764,4 +1764,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ASSEMBLER_MIPS_H_
+#endif  // RUNTIME_VM_ASSEMBLER_MIPS_H_
diff --git a/runtime/vm/assembler_x64.h b/runtime/vm/assembler_x64.h
index 651fcd5..82094d2 100644
--- a/runtime/vm/assembler_x64.h
+++ b/runtime/vm/assembler_x64.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ASSEMBLER_X64_H_
-#define VM_ASSEMBLER_X64_H_
+#ifndef RUNTIME_VM_ASSEMBLER_X64_H_
+#define RUNTIME_VM_ASSEMBLER_X64_H_
 
-#ifndef VM_ASSEMBLER_H_
+#ifndef RUNTIME_VM_ASSEMBLER_H_
 #error Do not include assembler_x64.h directly; use assembler.h instead.
 #endif
 
@@ -1175,4 +1175,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ASSEMBLER_X64_H_
+#endif  // RUNTIME_VM_ASSEMBLER_X64_H_
diff --git a/runtime/vm/ast.h b/runtime/vm/ast.h
index cd25dc7..8fa533b 100644
--- a/runtime/vm/ast.h
+++ b/runtime/vm/ast.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_AST_H_
-#define VM_AST_H_
+#ifndef RUNTIME_VM_AST_H_
+#define RUNTIME_VM_AST_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -2026,4 +2026,4 @@
 
 #undef DECLARE_COMMON_NODE_FUNCTIONS
 
-#endif  // VM_AST_H_
+#endif  // RUNTIME_VM_AST_H_
diff --git a/runtime/vm/ast_printer.h b/runtime/vm/ast_printer.h
index b5ee0bd..f89d9bc 100644
--- a/runtime/vm/ast_printer.h
+++ b/runtime/vm/ast_printer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_AST_PRINTER_H_
-#define VM_AST_PRINTER_H_
+#ifndef RUNTIME_VM_AST_PRINTER_H_
+#define RUNTIME_VM_AST_PRINTER_H_
 
 #include "vm/ast.h"
 #include "vm/growable_array.h"
@@ -52,4 +52,4 @@
 
 }  // namespace dart
 
-#endif  // VM_AST_PRINTER_H_
+#endif  // RUNTIME_VM_AST_PRINTER_H_
diff --git a/runtime/vm/ast_transformer.h b/runtime/vm/ast_transformer.h
index e189afd..917919f 100644
--- a/runtime/vm/ast_transformer.h
+++ b/runtime/vm/ast_transformer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_AST_TRANSFORMER_H_
-#define VM_AST_TRANSFORMER_H_
+#ifndef RUNTIME_VM_AST_TRANSFORMER_H_
+#define RUNTIME_VM_AST_TRANSFORMER_H_
 
 #include "platform/assert.h"
 #include "vm/ast.h"
@@ -77,4 +77,4 @@
 
 }  // namespace dart
 
-#endif  // VM_AST_TRANSFORMER_H_
+#endif  // RUNTIME_VM_AST_TRANSFORMER_H_
diff --git a/runtime/vm/atomic.h b/runtime/vm/atomic.h
index e16eee1..75d0b84 100644
--- a/runtime/vm/atomic.h
+++ b/runtime/vm/atomic.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ATOMIC_H_
-#define VM_ATOMIC_H_
+#ifndef RUNTIME_VM_ATOMIC_H_
+#define RUNTIME_VM_ATOMIC_H_
 
 #include "platform/globals.h"
 
@@ -86,4 +86,4 @@
 #error Unknown target os.
 #endif
 
-#endif  // VM_ATOMIC_H_
+#endif  // RUNTIME_VM_ATOMIC_H_
diff --git a/runtime/vm/atomic_android.h b/runtime/vm/atomic_android.h
index aa2b623..f0731ab 100644
--- a/runtime/vm/atomic_android.h
+++ b/runtime/vm/atomic_android.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ATOMIC_ANDROID_H_
-#define VM_ATOMIC_ANDROID_H_
+#ifndef RUNTIME_VM_ATOMIC_ANDROID_H_
+#define RUNTIME_VM_ATOMIC_ANDROID_H_
 
-#if !defined VM_ATOMIC_H_
+#if !defined RUNTIME_VM_ATOMIC_H_
 #error Do not include atomic_android.h directly. Use atomic.h instead.
 #endif
 
@@ -68,4 +68,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ATOMIC_ANDROID_H_
+#endif  // RUNTIME_VM_ATOMIC_ANDROID_H_
diff --git a/runtime/vm/atomic_fuchsia.h b/runtime/vm/atomic_fuchsia.h
index c44c080..e85899f 100644
--- a/runtime/vm/atomic_fuchsia.h
+++ b/runtime/vm/atomic_fuchsia.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ATOMIC_FUCHSIA_H_
-#define VM_ATOMIC_FUCHSIA_H_
+#ifndef RUNTIME_VM_ATOMIC_FUCHSIA_H_
+#define RUNTIME_VM_ATOMIC_FUCHSIA_H_
 
-#if !defined VM_ATOMIC_H_
+#if !defined RUNTIME_VM_ATOMIC_H_
 #error Do not include atomic_fuchsia.h directly. Use atomic.h instead.
 #endif
 
@@ -67,4 +67,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ATOMIC_FUCHSIA_H_
+#endif  // RUNTIME_VM_ATOMIC_FUCHSIA_H_
diff --git a/runtime/vm/atomic_linux.h b/runtime/vm/atomic_linux.h
index 350bced..c4ee910 100644
--- a/runtime/vm/atomic_linux.h
+++ b/runtime/vm/atomic_linux.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ATOMIC_LINUX_H_
-#define VM_ATOMIC_LINUX_H_
+#ifndef RUNTIME_VM_ATOMIC_LINUX_H_
+#define RUNTIME_VM_ATOMIC_LINUX_H_
 
-#if !defined VM_ATOMIC_H_
+#if !defined RUNTIME_VM_ATOMIC_H_
 #error Do not include atomic_linux.h directly. Use atomic.h instead.
 #endif
 
@@ -73,4 +73,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ATOMIC_LINUX_H_
+#endif  // RUNTIME_VM_ATOMIC_LINUX_H_
diff --git a/runtime/vm/atomic_macos.h b/runtime/vm/atomic_macos.h
index cdd57d4..e1c701f 100644
--- a/runtime/vm/atomic_macos.h
+++ b/runtime/vm/atomic_macos.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ATOMIC_MACOS_H_
-#define VM_ATOMIC_MACOS_H_
+#ifndef RUNTIME_VM_ATOMIC_MACOS_H_
+#define RUNTIME_VM_ATOMIC_MACOS_H_
 
-#if !defined VM_ATOMIC_H_
+#if !defined RUNTIME_VM_ATOMIC_H_
 #error Do not include atomic_macos.h directly. Use atomic.h instead.
 #endif
 
@@ -68,4 +68,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ATOMIC_MACOS_H_
+#endif  // RUNTIME_VM_ATOMIC_MACOS_H_
diff --git a/runtime/vm/atomic_simulator.h b/runtime/vm/atomic_simulator.h
index 78e7f88..83bd623 100644
--- a/runtime/vm/atomic_simulator.h
+++ b/runtime/vm/atomic_simulator.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ATOMIC_SIMULATOR_H_
-#define VM_ATOMIC_SIMULATOR_H_
+#ifndef RUNTIME_VM_ATOMIC_SIMULATOR_H_
+#define RUNTIME_VM_ATOMIC_SIMULATOR_H_
 
-#if !defined VM_ATOMIC_H_
+#if !defined RUNTIME_VM_ATOMIC_H_
 #error Do not include atomic_simulator.h directly. Use atomic.h instead.
 #endif
 
@@ -29,4 +29,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ATOMIC_SIMULATOR_H_
+#endif  // RUNTIME_VM_ATOMIC_SIMULATOR_H_
diff --git a/runtime/vm/atomic_win.h b/runtime/vm/atomic_win.h
index 2f8ee20..7abf59e 100644
--- a/runtime/vm/atomic_win.h
+++ b/runtime/vm/atomic_win.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ATOMIC_WIN_H_
-#define VM_ATOMIC_WIN_H_
+#ifndef RUNTIME_VM_ATOMIC_WIN_H_
+#define RUNTIME_VM_ATOMIC_WIN_H_
 
-#if !defined VM_ATOMIC_H_
+#if !defined RUNTIME_VM_ATOMIC_H_
 #error Do not include atomic_win.h directly. Use atomic.h instead.
 #endif
 
@@ -137,4 +137,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ATOMIC_WIN_H_
+#endif  // RUNTIME_VM_ATOMIC_WIN_H_
diff --git a/runtime/vm/base_isolate.h b/runtime/vm/base_isolate.h
index b2cc7fc..bd76b90 100644
--- a/runtime/vm/base_isolate.h
+++ b/runtime/vm/base_isolate.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BASE_ISOLATE_H_
-#define VM_BASE_ISOLATE_H_
+#ifndef RUNTIME_VM_BASE_ISOLATE_H_
+#define RUNTIME_VM_BASE_ISOLATE_H_
 
 #include "platform/assert.h"
 #include "vm/globals.h"
@@ -47,4 +47,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BASE_ISOLATE_H_
+#endif  // RUNTIME_VM_BASE_ISOLATE_H_
diff --git a/runtime/vm/become.h b/runtime/vm/become.h
index 12ab764..0bee126 100644
--- a/runtime/vm/become.h
+++ b/runtime/vm/become.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BECOME_H_
-#define VM_BECOME_H_
+#ifndef RUNTIME_VM_BECOME_H_
+#define RUNTIME_VM_BECOME_H_
 
 #include "vm/allocation.h"
 #include "vm/raw_object.h"
@@ -92,4 +92,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BECOME_H_
+#endif  // RUNTIME_VM_BECOME_H_
diff --git a/runtime/vm/benchmark_test.h b/runtime/vm/benchmark_test.h
index 40f36a0..db0c1f6 100644
--- a/runtime/vm/benchmark_test.h
+++ b/runtime/vm/benchmark_test.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BENCHMARK_TEST_H_
-#define VM_BENCHMARK_TEST_H_
+#ifndef RUNTIME_VM_BENCHMARK_TEST_H_
+#define RUNTIME_VM_BENCHMARK_TEST_H_
 
 #include "include/dart_api.h"
 
@@ -128,4 +128,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BENCHMARK_TEST_H_
+#endif  // RUNTIME_VM_BENCHMARK_TEST_H_
diff --git a/runtime/vm/bit_set.h b/runtime/vm/bit_set.h
index a60f668..2735a72 100644
--- a/runtime/vm/bit_set.h
+++ b/runtime/vm/bit_set.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BIT_SET_H_
-#define VM_BIT_SET_H_
+#ifndef RUNTIME_VM_BIT_SET_H_
+#define RUNTIME_VM_BIT_SET_H_
 
 #include "platform/utils.h"
 #include "vm/globals.h"
@@ -100,4 +100,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BIT_SET_H_
+#endif  // RUNTIME_VM_BIT_SET_H_
diff --git a/runtime/vm/bit_vector.h b/runtime/vm/bit_vector.h
index 9afa05f..e1c133a 100644
--- a/runtime/vm/bit_vector.h
+++ b/runtime/vm/bit_vector.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BIT_VECTOR_H_
-#define VM_BIT_VECTOR_H_
+#ifndef RUNTIME_VM_BIT_VECTOR_H_
+#define RUNTIME_VM_BIT_VECTOR_H_
 
 #include "vm/allocation.h"
 #include "vm/isolate.h"
@@ -118,4 +118,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BIT_VECTOR_H_
+#endif  // RUNTIME_VM_BIT_VECTOR_H_
diff --git a/runtime/vm/bitfield.h b/runtime/vm/bitfield.h
index 42a121a..eba83fee 100644
--- a/runtime/vm/bitfield.h
+++ b/runtime/vm/bitfield.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BITFIELD_H_
-#define VM_BITFIELD_H_
+#ifndef RUNTIME_VM_BITFIELD_H_
+#define RUNTIME_VM_BITFIELD_H_
 
 namespace dart {
 
@@ -67,4 +67,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BITFIELD_H_
+#endif  // RUNTIME_VM_BITFIELD_H_
diff --git a/runtime/vm/bitmap.h b/runtime/vm/bitmap.h
index 507167e..20c1983 100644
--- a/runtime/vm/bitmap.h
+++ b/runtime/vm/bitmap.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BITMAP_H_
-#define VM_BITMAP_H_
+#ifndef RUNTIME_VM_BITMAP_H_
+#define RUNTIME_VM_BITMAP_H_
 
 #include "vm/allocation.h"
 #include "vm/isolate.h"
@@ -77,4 +77,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BITMAP_H_
+#endif  // RUNTIME_VM_BITMAP_H_
diff --git a/runtime/vm/block_scheduler.h b/runtime/vm/block_scheduler.h
index 911bb14..94982d3 100644
--- a/runtime/vm/block_scheduler.h
+++ b/runtime/vm/block_scheduler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BLOCK_SCHEDULER_H_
-#define VM_BLOCK_SCHEDULER_H_
+#ifndef RUNTIME_VM_BLOCK_SCHEDULER_H_
+#define RUNTIME_VM_BLOCK_SCHEDULER_H_
 
 #include "vm/allocation.h"
 
@@ -27,4 +27,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BLOCK_SCHEDULER_H_
+#endif  // RUNTIME_VM_BLOCK_SCHEDULER_H_
diff --git a/runtime/vm/boolfield.h b/runtime/vm/boolfield.h
index 64117f2..6cd45ba 100644
--- a/runtime/vm/boolfield.h
+++ b/runtime/vm/boolfield.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BOOLFIELD_H_
-#define VM_BOOLFIELD_H_
+#ifndef RUNTIME_VM_BOOLFIELD_H_
+#define RUNTIME_VM_BOOLFIELD_H_
 
 #include "vm/globals.h"
 
@@ -38,4 +38,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BOOLFIELD_H_
+#endif  // RUNTIME_VM_BOOLFIELD_H_
diff --git a/runtime/vm/bootstrap.h b/runtime/vm/bootstrap.h
index eb238ed..7c5ab0e 100644
--- a/runtime/vm/bootstrap.h
+++ b/runtime/vm/bootstrap.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BOOTSTRAP_H_
-#define VM_BOOTSTRAP_H_
+#ifndef RUNTIME_VM_BOOTSTRAP_H_
+#define RUNTIME_VM_BOOTSTRAP_H_
 
 #include "include/dart_api.h"
 #include "vm/allocation.h"
@@ -52,4 +52,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BOOTSTRAP_H_
+#endif  // RUNTIME_VM_BOOTSTRAP_H_
diff --git a/runtime/vm/bootstrap_natives.h b/runtime/vm/bootstrap_natives.h
index d7cb2b2..4677ca1 100644
--- a/runtime/vm/bootstrap_natives.h
+++ b/runtime/vm/bootstrap_natives.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BOOTSTRAP_NATIVES_H_
-#define VM_BOOTSTRAP_NATIVES_H_
+#ifndef RUNTIME_VM_BOOTSTRAP_NATIVES_H_
+#define RUNTIME_VM_BOOTSTRAP_NATIVES_H_
 
 #include "vm/native_entry.h"
 
@@ -426,4 +426,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BOOTSTRAP_NATIVES_H_
+#endif  // RUNTIME_VM_BOOTSTRAP_NATIVES_H_
diff --git a/runtime/vm/branch_optimizer.h b/runtime/vm/branch_optimizer.h
index 2e2b135..caef6a7 100644
--- a/runtime/vm/branch_optimizer.h
+++ b/runtime/vm/branch_optimizer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_BRANCH_OPTIMIZER_H_
-#define VM_BRANCH_OPTIMIZER_H_
+#ifndef RUNTIME_VM_BRANCH_OPTIMIZER_H_
+#define RUNTIME_VM_BRANCH_OPTIMIZER_H_
 
 #include "vm/allocation.h"
 
@@ -53,4 +53,4 @@
 
 }  // namespace dart
 
-#endif  // VM_BRANCH_OPTIMIZER_H_
+#endif  // RUNTIME_VM_BRANCH_OPTIMIZER_H_
diff --git a/runtime/vm/cha.h b/runtime/vm/cha.h
index 7aa7774..5bd7796 100644
--- a/runtime/vm/cha.h
+++ b/runtime/vm/cha.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CHA_H_
-#define VM_CHA_H_
+#ifndef RUNTIME_VM_CHA_H_
+#define RUNTIME_VM_CHA_H_
 
 #include "vm/allocation.h"
 #include "vm/growable_array.h"
@@ -85,4 +85,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CHA_H_
+#endif  // RUNTIME_VM_CHA_H_
diff --git a/runtime/vm/class_finalizer.h b/runtime/vm/class_finalizer.h
index 81850f6..16a19f8 100644
--- a/runtime/vm/class_finalizer.h
+++ b/runtime/vm/class_finalizer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CLASS_FINALIZER_H_
-#define VM_CLASS_FINALIZER_H_
+#ifndef RUNTIME_VM_CLASS_FINALIZER_H_
+#define RUNTIME_VM_CLASS_FINALIZER_H_
 
 #include "vm/allocation.h"
 #include "vm/growable_array.h"
@@ -180,4 +180,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CLASS_FINALIZER_H_
+#endif  // RUNTIME_VM_CLASS_FINALIZER_H_
diff --git a/runtime/vm/class_table.h b/runtime/vm/class_table.h
index 1ab7da1..1ffee71 100644
--- a/runtime/vm/class_table.h
+++ b/runtime/vm/class_table.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CLASS_TABLE_H_
-#define VM_CLASS_TABLE_H_
+#ifndef RUNTIME_VM_CLASS_TABLE_H_
+#define RUNTIME_VM_CLASS_TABLE_H_
 
 #include "platform/assert.h"
 #include "vm/bitfield.h"
@@ -280,4 +280,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CLASS_TABLE_H_
+#endif  // RUNTIME_VM_CLASS_TABLE_H_
diff --git a/runtime/vm/clustered_snapshot.h b/runtime/vm/clustered_snapshot.h
index aae4e82..8aba9e1 100644
--- a/runtime/vm/clustered_snapshot.h
+++ b/runtime/vm/clustered_snapshot.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CLUSTERED_SNAPSHOT_H_
-#define VM_CLUSTERED_SNAPSHOT_H_
+#ifndef RUNTIME_VM_CLUSTERED_SNAPSHOT_H_
+#define RUNTIME_VM_CLUSTERED_SNAPSHOT_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -517,4 +517,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CLUSTERED_SNAPSHOT_H_
+#endif  // RUNTIME_VM_CLUSTERED_SNAPSHOT_H_
diff --git a/runtime/vm/code_descriptors.h b/runtime/vm/code_descriptors.h
index c5eeda7..ef56938 100644
--- a/runtime/vm/code_descriptors.h
+++ b/runtime/vm/code_descriptors.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CODE_DESCRIPTORS_H_
-#define VM_CODE_DESCRIPTORS_H_
+#ifndef RUNTIME_VM_CODE_DESCRIPTORS_H_
+#define RUNTIME_VM_CODE_DESCRIPTORS_H_
 
 #include "vm/ast.h"
 #include "vm/code_generator.h"
@@ -165,4 +165,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CODE_DESCRIPTORS_H_
+#endif  // RUNTIME_VM_CODE_DESCRIPTORS_H_
diff --git a/runtime/vm/code_generator.cc b/runtime/vm/code_generator.cc
index 85a5bce..0c3b3a1 100644
--- a/runtime/vm/code_generator.cc
+++ b/runtime/vm/code_generator.cc
@@ -826,7 +826,7 @@
                          ? store->simple_instance_of_true_function()
                          : store->simple_instance_of_false_function());
   ASSERT(!target.IsNull());
-  return target.raw();;
+  return target.raw();
 }
 
 
diff --git a/runtime/vm/code_generator.h b/runtime/vm/code_generator.h
index e0c49b7..d188504 100644
--- a/runtime/vm/code_generator.h
+++ b/runtime/vm/code_generator.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CODE_GENERATOR_H_
-#define VM_CODE_GENERATOR_H_
+#ifndef RUNTIME_VM_CODE_GENERATOR_H_
+#define RUNTIME_VM_CODE_GENERATOR_H_
 
 #include "vm/globals.h"
 #include "vm/runtime_entry.h"
@@ -25,4 +25,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CODE_GENERATOR_H_
+#endif  // RUNTIME_VM_CODE_GENERATOR_H_
diff --git a/runtime/vm/code_observers.h b/runtime/vm/code_observers.h
index 1ce8135..66794d9 100644
--- a/runtime/vm/code_observers.h
+++ b/runtime/vm/code_observers.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CODE_OBSERVERS_H_
-#define VM_CODE_OBSERVERS_H_
+#ifndef RUNTIME_VM_CODE_OBSERVERS_H_
+#define RUNTIME_VM_CODE_OBSERVERS_H_
 
 #include "vm/globals.h"
 #include "vm/allocation.h"
@@ -71,4 +71,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CODE_OBSERVERS_H_
+#endif  // RUNTIME_VM_CODE_OBSERVERS_H_
diff --git a/runtime/vm/code_patcher.h b/runtime/vm/code_patcher.h
index c342f5d..ec90721 100644
--- a/runtime/vm/code_patcher.h
+++ b/runtime/vm/code_patcher.h
@@ -3,8 +3,8 @@
 // BSD-style license that can be found in the LICENSE file.
 // Class for patching compiled code.
 
-#ifndef VM_CODE_PATCHER_H_
-#define VM_CODE_PATCHER_H_
+#ifndef RUNTIME_VM_CODE_PATCHER_H_
+#define RUNTIME_VM_CODE_PATCHER_H_
 
 #include "vm/allocation.h"
 #include "vm/native_entry.h"
@@ -95,4 +95,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CODE_PATCHER_H_
+#endif  // RUNTIME_VM_CODE_PATCHER_H_
diff --git a/runtime/vm/compiler.h b/runtime/vm/compiler.h
index 4c059c9..5182364 100644
--- a/runtime/vm/compiler.h
+++ b/runtime/vm/compiler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_COMPILER_H_
-#define VM_COMPILER_H_
+#ifndef RUNTIME_VM_COMPILER_H_
+#define RUNTIME_VM_COMPILER_H_
 
 #include "vm/allocation.h"
 #include "vm/growable_array.h"
@@ -202,4 +202,4 @@
 
 }  // namespace dart
 
-#endif  // VM_COMPILER_H_
+#endif  // RUNTIME_VM_COMPILER_H_
diff --git a/runtime/vm/compiler_stats.h b/runtime/vm/compiler_stats.h
index 98143a3..7c1f39f 100644
--- a/runtime/vm/compiler_stats.h
+++ b/runtime/vm/compiler_stats.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_COMPILER_STATS_H_
-#define VM_COMPILER_STATS_H_
+#ifndef RUNTIME_VM_COMPILER_STATS_H_
+#define RUNTIME_VM_COMPILER_STATS_H_
 
 #include "vm/allocation.h"
 #include "vm/atomic.h"
@@ -142,4 +142,4 @@
 
 }  // namespace dart
 
-#endif  // VM_COMPILER_STATS_H_
+#endif  // RUNTIME_VM_COMPILER_STATS_H_
diff --git a/runtime/vm/constant_propagator.h b/runtime/vm/constant_propagator.h
index 024cbef..191c6b8 100644
--- a/runtime/vm/constant_propagator.h
+++ b/runtime/vm/constant_propagator.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CONSTANT_PROPAGATOR_H_
-#define VM_CONSTANT_PROPAGATOR_H_
+#ifndef RUNTIME_VM_CONSTANT_PROPAGATOR_H_
+#define RUNTIME_VM_CONSTANT_PROPAGATOR_H_
 
 #include "vm/intermediate_language.h"
 #include "vm/flow_graph.h"
@@ -90,4 +90,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CONSTANT_PROPAGATOR_H_
+#endif  // RUNTIME_VM_CONSTANT_PROPAGATOR_H_
diff --git a/runtime/vm/constants_arm.h b/runtime/vm/constants_arm.h
index f544a77..764e541 100644
--- a/runtime/vm/constants_arm.h
+++ b/runtime/vm/constants_arm.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CONSTANTS_ARM_H_
-#define VM_CONSTANTS_ARM_H_
+#ifndef RUNTIME_VM_CONSTANTS_ARM_H_
+#define RUNTIME_VM_CONSTANTS_ARM_H_
 
 #include "platform/globals.h"
 #include "platform/assert.h"
@@ -774,4 +774,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CONSTANTS_ARM_H_
+#endif  // RUNTIME_VM_CONSTANTS_ARM_H_
diff --git a/runtime/vm/constants_arm64.h b/runtime/vm/constants_arm64.h
index e855b0f..c2d6981 100644
--- a/runtime/vm/constants_arm64.h
+++ b/runtime/vm/constants_arm64.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CONSTANTS_ARM64_H_
-#define VM_CONSTANTS_ARM64_H_
+#ifndef RUNTIME_VM_CONSTANTS_ARM64_H_
+#define RUNTIME_VM_CONSTANTS_ARM64_H_
 
 #include "platform/assert.h"
 
@@ -1104,4 +1104,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CONSTANTS_ARM64_H_
+#endif  // RUNTIME_VM_CONSTANTS_ARM64_H_
diff --git a/runtime/vm/constants_dbc.h b/runtime/vm/constants_dbc.h
index 44e5026..e93bc0b 100644
--- a/runtime/vm/constants_dbc.h
+++ b/runtime/vm/constants_dbc.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CONSTANTS_DBC_H_
-#define VM_CONSTANTS_DBC_H_
+#ifndef RUNTIME_VM_CONSTANTS_DBC_H_
+#define RUNTIME_VM_CONSTANTS_DBC_H_
 
 #include "platform/globals.h"
 #include "platform/assert.h"
@@ -966,4 +966,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CONSTANTS_DBC_H_
+#endif  // RUNTIME_VM_CONSTANTS_DBC_H_
diff --git a/runtime/vm/constants_ia32.h b/runtime/vm/constants_ia32.h
index adf988a..5d61a9a 100644
--- a/runtime/vm/constants_ia32.h
+++ b/runtime/vm/constants_ia32.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CONSTANTS_IA32_H_
-#define VM_CONSTANTS_IA32_H_
+#ifndef RUNTIME_VM_CONSTANTS_IA32_H_
+#define RUNTIME_VM_CONSTANTS_IA32_H_
 
 #include "platform/assert.h"
 
@@ -160,4 +160,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CONSTANTS_IA32_H_
+#endif  // RUNTIME_VM_CONSTANTS_IA32_H_
diff --git a/runtime/vm/constants_mips.h b/runtime/vm/constants_mips.h
index 9a79f53..7f53e40 100644
--- a/runtime/vm/constants_mips.h
+++ b/runtime/vm/constants_mips.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CONSTANTS_MIPS_H_
-#define VM_CONSTANTS_MIPS_H_
+#ifndef RUNTIME_VM_CONSTANTS_MIPS_H_
+#define RUNTIME_VM_CONSTANTS_MIPS_H_
 
 #include "platform/assert.h"
 
@@ -658,4 +658,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CONSTANTS_MIPS_H_
+#endif  // RUNTIME_VM_CONSTANTS_MIPS_H_
diff --git a/runtime/vm/constants_x64.h b/runtime/vm/constants_x64.h
index 72c4710..a40dd03 100644
--- a/runtime/vm/constants_x64.h
+++ b/runtime/vm/constants_x64.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CONSTANTS_X64_H_
-#define VM_CONSTANTS_X64_H_
+#ifndef RUNTIME_VM_CONSTANTS_X64_H_
+#define RUNTIME_VM_CONSTANTS_X64_H_
 
 namespace dart {
 
@@ -242,4 +242,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CONSTANTS_X64_H_
+#endif  // RUNTIME_VM_CONSTANTS_X64_H_
diff --git a/runtime/vm/cpu.h b/runtime/vm/cpu.h
index 3b93489..cdd0c25 100644
--- a/runtime/vm/cpu.h
+++ b/runtime/vm/cpu.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPU_H_
-#define VM_CPU_H_
+#ifndef RUNTIME_VM_CPU_H_
+#define RUNTIME_VM_CPU_H_
 
 #include "vm/globals.h"
 #include "vm/allocation.h"
@@ -39,4 +39,4 @@
 #error Unknown architecture.
 #endif
 
-#endif  // VM_CPU_H_
+#endif  // RUNTIME_VM_CPU_H_
diff --git a/runtime/vm/cpu_arm.cc b/runtime/vm/cpu_arm.cc
index edaea94..be88185 100644
--- a/runtime/vm/cpu_arm.cc
+++ b/runtime/vm/cpu_arm.cc
@@ -5,8 +5,10 @@
 #include "vm/globals.h"
 #if defined(TARGET_ARCH_ARM)
 
-#include "vm/assembler.h"
 #include "vm/cpu.h"
+#include "vm/cpu_arm.h"
+
+#include "vm/assembler.h"
 #include "vm/cpuinfo.h"
 #include "vm/heap.h"
 #include "vm/isolate.h"
diff --git a/runtime/vm/cpu_arm.h b/runtime/vm/cpu_arm.h
index e1dd907..b0e43f7 100644
--- a/runtime/vm/cpu_arm.h
+++ b/runtime/vm/cpu_arm.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPU_ARM_H_
-#define VM_CPU_ARM_H_
+#ifndef RUNTIME_VM_CPU_ARM_H_
+#define RUNTIME_VM_CPU_ARM_H_
 
 #include "vm/allocation.h"
 #include "vm/simulator.h"
@@ -129,4 +129,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CPU_ARM_H_
+#endif  // RUNTIME_VM_CPU_ARM_H_
diff --git a/runtime/vm/cpu_arm64.h b/runtime/vm/cpu_arm64.h
index 884981b..89799ea 100644
--- a/runtime/vm/cpu_arm64.h
+++ b/runtime/vm/cpu_arm64.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPU_ARM64_H_
-#define VM_CPU_ARM64_H_
+#ifndef RUNTIME_VM_CPU_ARM64_H_
+#define RUNTIME_VM_CPU_ARM64_H_
 
 #include "vm/allocation.h"
 #include "vm/simulator.h"
@@ -52,4 +52,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CPU_ARM64_H_
+#endif  // RUNTIME_VM_CPU_ARM64_H_
diff --git a/runtime/vm/cpu_dbc.h b/runtime/vm/cpu_dbc.h
index 486acdb..e42cc1c 100644
--- a/runtime/vm/cpu_dbc.h
+++ b/runtime/vm/cpu_dbc.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPU_DBC_H_
-#define VM_CPU_DBC_H_
+#ifndef RUNTIME_VM_CPU_DBC_H_
+#define RUNTIME_VM_CPU_DBC_H_
 
 #include "vm/allocation.h"
 #include "vm/simulator.h"
@@ -47,4 +47,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CPU_DBC_H_
+#endif  // RUNTIME_VM_CPU_DBC_H_
diff --git a/runtime/vm/cpu_ia32.cc b/runtime/vm/cpu_ia32.cc
index 5445b48..441a8ad 100644
--- a/runtime/vm/cpu_ia32.cc
+++ b/runtime/vm/cpu_ia32.cc
@@ -6,6 +6,7 @@
 #if defined(TARGET_ARCH_IA32)
 
 #include "vm/cpu.h"
+#include "vm/cpu_ia32.h"
 
 #include "vm/assembler.h"
 #include "vm/constants_ia32.h"
diff --git a/runtime/vm/cpu_ia32.h b/runtime/vm/cpu_ia32.h
index 66f4724..3c3d836 100644
--- a/runtime/vm/cpu_ia32.h
+++ b/runtime/vm/cpu_ia32.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPU_IA32_H_
-#define VM_CPU_IA32_H_
+#ifndef RUNTIME_VM_CPU_IA32_H_
+#define RUNTIME_VM_CPU_IA32_H_
 
 #include "vm/allocation.h"
 #include "vm/flags.h"
@@ -64,4 +64,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CPU_IA32_H_
+#endif  // RUNTIME_VM_CPU_IA32_H_
diff --git a/runtime/vm/cpu_mips.cc b/runtime/vm/cpu_mips.cc
index 5b97d32..f220706 100644
--- a/runtime/vm/cpu_mips.cc
+++ b/runtime/vm/cpu_mips.cc
@@ -3,10 +3,11 @@
 // BSD-style license that can be found in the LICENSE file.
 
 #include "vm/globals.h"
-
 #if defined(TARGET_ARCH_MIPS)
 
 #include "vm/cpu.h"
+#include "vm/cpu_mips.h"
+
 #include "vm/cpuinfo.h"
 #include "vm/simulator.h"
 
diff --git a/runtime/vm/cpu_mips.h b/runtime/vm/cpu_mips.h
index d511522..b9dde4d 100644
--- a/runtime/vm/cpu_mips.h
+++ b/runtime/vm/cpu_mips.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPU_MIPS_H_
-#define VM_CPU_MIPS_H_
+#ifndef RUNTIME_VM_CPU_MIPS_H_
+#define RUNTIME_VM_CPU_MIPS_H_
 
 #include "vm/allocation.h"
 
@@ -65,4 +65,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CPU_MIPS_H_
+#endif  // RUNTIME_VM_CPU_MIPS_H_
diff --git a/runtime/vm/cpu_x64.cc b/runtime/vm/cpu_x64.cc
index 073ce84..3ad20d7 100644
--- a/runtime/vm/cpu_x64.cc
+++ b/runtime/vm/cpu_x64.cc
@@ -3,10 +3,10 @@
 // BSD-style license that can be found in the LICENSE file.
 
 #include "vm/globals.h"
-
 #if defined(TARGET_ARCH_X64)
 
 #include "vm/cpu.h"
+#include "vm/cpu_x64.h"
 
 #include "vm/assembler.h"
 #include "vm/constants_x64.h"
diff --git a/runtime/vm/cpu_x64.h b/runtime/vm/cpu_x64.h
index 579650a..c56ee64 100644
--- a/runtime/vm/cpu_x64.h
+++ b/runtime/vm/cpu_x64.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPU_X64_H_
-#define VM_CPU_X64_H_
+#ifndef RUNTIME_VM_CPU_X64_H_
+#define RUNTIME_VM_CPU_X64_H_
 
 #include "vm/allocation.h"
 #include "vm/flags.h"
@@ -64,4 +64,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CPU_X64_H_
+#endif  // RUNTIME_VM_CPU_X64_H_
diff --git a/runtime/vm/cpuid.h b/runtime/vm/cpuid.h
index b33812e..63b317b 100644
--- a/runtime/vm/cpuid.h
+++ b/runtime/vm/cpuid.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPUID_H_
-#define VM_CPUID_H_
+#ifndef RUNTIME_VM_CPUID_H_
+#define RUNTIME_VM_CPUID_H_
 
 #include "vm/globals.h"
 #if !defined(TARGET_OS_MACOS)
@@ -45,4 +45,4 @@
 }  // namespace dart
 
 #endif  // !defined(TARGET_OS_MACOS)
-#endif  // VM_CPUID_H_
+#endif  // RUNTIME_VM_CPUID_H_
diff --git a/runtime/vm/cpuinfo.h b/runtime/vm/cpuinfo.h
index 95b6ec3..6e8da6d 100644
--- a/runtime/vm/cpuinfo.h
+++ b/runtime/vm/cpuinfo.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_CPUINFO_H_
-#define VM_CPUINFO_H_
+#ifndef RUNTIME_VM_CPUINFO_H_
+#define RUNTIME_VM_CPUINFO_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -72,4 +72,4 @@
 
 }  // namespace dart
 
-#endif  // VM_CPUINFO_H_
+#endif  // RUNTIME_VM_CPUINFO_H_
diff --git a/runtime/vm/dart.h b/runtime/vm/dart.h
index 10ffea3..f4e4386 100644
--- a/runtime/vm/dart.h
+++ b/runtime/vm/dart.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DART_H_
-#define VM_DART_H_
+#ifndef RUNTIME_VM_DART_H_
+#define RUNTIME_VM_DART_H_
 
 #include "include/dart_api.h"
 #include "vm/allocation.h"
@@ -137,4 +137,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DART_H_
+#endif  // RUNTIME_VM_DART_H_
diff --git a/runtime/vm/dart_api_impl.h b/runtime/vm/dart_api_impl.h
index f536e0b..0629b2d 100644
--- a/runtime/vm/dart_api_impl.h
+++ b/runtime/vm/dart_api_impl.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DART_API_IMPL_H_
-#define VM_DART_API_IMPL_H_
+#ifndef RUNTIME_VM_DART_API_IMPL_H_
+#define RUNTIME_VM_DART_API_IMPL_H_
 
 #include "vm/allocation.h"
 #include "vm/native_arguments.h"
@@ -303,4 +303,4 @@
 
 }  // namespace dart.
 
-#endif  // VM_DART_API_IMPL_H_
+#endif  // RUNTIME_VM_DART_API_IMPL_H_
diff --git a/runtime/vm/dart_api_message.h b/runtime/vm/dart_api_message.h
index bb1efa2..7baab59 100644
--- a/runtime/vm/dart_api_message.h
+++ b/runtime/vm/dart_api_message.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DART_API_MESSAGE_H_
-#define VM_DART_API_MESSAGE_H_
+#ifndef RUNTIME_VM_DART_API_MESSAGE_H_
+#define RUNTIME_VM_DART_API_MESSAGE_H_
 
 #include "include/dart_native_api.h"
 #include "platform/utils.h"
@@ -250,4 +250,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DART_API_MESSAGE_H_
+#endif  // RUNTIME_VM_DART_API_MESSAGE_H_
diff --git a/runtime/vm/dart_api_state.h b/runtime/vm/dart_api_state.h
index f687fb2..7b38cb5 100644
--- a/runtime/vm/dart_api_state.h
+++ b/runtime/vm/dart_api_state.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DART_API_STATE_H_
-#define VM_DART_API_STATE_H_
+#ifndef RUNTIME_VM_DART_API_STATE_H_
+#define RUNTIME_VM_DART_API_STATE_H_
 
 #include "include/dart_api.h"
 
@@ -826,4 +826,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DART_API_STATE_H_
+#endif  // RUNTIME_VM_DART_API_STATE_H_
diff --git a/runtime/vm/dart_entry.h b/runtime/vm/dart_entry.h
index 13294a3..e1d4f1a 100644
--- a/runtime/vm/dart_entry.h
+++ b/runtime/vm/dart_entry.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DART_ENTRY_H_
-#define VM_DART_ENTRY_H_
+#ifndef RUNTIME_VM_DART_ENTRY_H_
+#define RUNTIME_VM_DART_ENTRY_H_
 
 #include "vm/allocation.h"
 #include "vm/growable_array.h"
@@ -195,4 +195,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DART_ENTRY_H_
+#endif  // RUNTIME_VM_DART_ENTRY_H_
diff --git a/runtime/vm/datastream.h b/runtime/vm/datastream.h
index 58452a0..ca23535 100644
--- a/runtime/vm/datastream.h
+++ b/runtime/vm/datastream.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DATASTREAM_H_
-#define VM_DATASTREAM_H_
+#ifndef RUNTIME_VM_DATASTREAM_H_
+#define RUNTIME_VM_DATASTREAM_H_
 
 #include "platform/assert.h"
 #include "platform/utils.h"
@@ -478,4 +478,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DATASTREAM_H_
+#endif  // RUNTIME_VM_DATASTREAM_H_
diff --git a/runtime/vm/debugger.h b/runtime/vm/debugger.h
index 4338275..a903043 100644
--- a/runtime/vm/debugger.h
+++ b/runtime/vm/debugger.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DEBUGGER_H_
-#define VM_DEBUGGER_H_
+#ifndef RUNTIME_VM_DEBUGGER_H_
+#define RUNTIME_VM_DEBUGGER_H_
 
 #include "include/dart_tools_api.h"
 
@@ -655,4 +655,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DEBUGGER_H_
+#endif  // RUNTIME_VM_DEBUGGER_H_
diff --git a/runtime/vm/deferred_objects.h b/runtime/vm/deferred_objects.h
index de2262c..1c9d436 100644
--- a/runtime/vm/deferred_objects.h
+++ b/runtime/vm/deferred_objects.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DEFERRED_OBJECTS_H_
-#define VM_DEFERRED_OBJECTS_H_
+#ifndef RUNTIME_VM_DEFERRED_OBJECTS_H_
+#define RUNTIME_VM_DEFERRED_OBJECTS_H_
 
 #include "platform/globals.h"
 
@@ -271,4 +271,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DEFERRED_OBJECTS_H_
+#endif  // RUNTIME_VM_DEFERRED_OBJECTS_H_
diff --git a/runtime/vm/deopt_instructions.h b/runtime/vm/deopt_instructions.h
index 09e01b4..ee1a052 100644
--- a/runtime/vm/deopt_instructions.h
+++ b/runtime/vm/deopt_instructions.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DEOPT_INSTRUCTIONS_H_
-#define VM_DEOPT_INSTRUCTIONS_H_
+#ifndef RUNTIME_VM_DEOPT_INSTRUCTIONS_H_
+#define RUNTIME_VM_DEOPT_INSTRUCTIONS_H_
 
 #include "vm/allocation.h"
 #include "vm/assembler.h"
@@ -605,4 +605,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DEOPT_INSTRUCTIONS_H_
+#endif  // RUNTIME_VM_DEOPT_INSTRUCTIONS_H_
diff --git a/runtime/vm/disassembler.h b/runtime/vm/disassembler.h
index 7adb12a..e26a214 100644
--- a/runtime/vm/disassembler.h
+++ b/runtime/vm/disassembler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DISASSEMBLER_H_
-#define VM_DISASSEMBLER_H_
+#ifndef RUNTIME_VM_DISASSEMBLER_H_
+#define RUNTIME_VM_DISASSEMBLER_H_
 
 #include "vm/allocation.h"
 #include "vm/assembler.h"
@@ -138,4 +138,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DISASSEMBLER_H_
+#endif  // RUNTIME_VM_DISASSEMBLER_H_
diff --git a/runtime/vm/double_conversion.h b/runtime/vm/double_conversion.h
index ded82a4..dd6e213 100644
--- a/runtime/vm/double_conversion.h
+++ b/runtime/vm/double_conversion.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DOUBLE_CONVERSION_H_
-#define VM_DOUBLE_CONVERSION_H_
+#ifndef RUNTIME_VM_DOUBLE_CONVERSION_H_
+#define RUNTIME_VM_DOUBLE_CONVERSION_H_
 
 #include "vm/globals.h"
 #include "vm/object.h"
@@ -19,4 +19,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DOUBLE_CONVERSION_H_
+#endif  // RUNTIME_VM_DOUBLE_CONVERSION_H_
diff --git a/runtime/vm/double_internals.h b/runtime/vm/double_internals.h
index 4e54475..4a55548 100644
--- a/runtime/vm/double_internals.h
+++ b/runtime/vm/double_internals.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_DOUBLE_INTERNALS_H_
-#define VM_DOUBLE_INTERNALS_H_
+#ifndef RUNTIME_VM_DOUBLE_INTERNALS_H_
+#define RUNTIME_VM_DOUBLE_INTERNALS_H_
 
 #include "platform/utils.h"
 
@@ -77,4 +77,4 @@
 
 }  // namespace dart
 
-#endif  // VM_DOUBLE_INTERNALS_H_
+#endif  // RUNTIME_VM_DOUBLE_INTERNALS_H_
diff --git a/runtime/vm/exceptions.h b/runtime/vm/exceptions.h
index e85f100..eaf6194 100644
--- a/runtime/vm/exceptions.h
+++ b/runtime/vm/exceptions.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_EXCEPTIONS_H_
-#define VM_EXCEPTIONS_H_
+#ifndef RUNTIME_VM_EXCEPTIONS_H_
+#define RUNTIME_VM_EXCEPTIONS_H_
 
 #include "vm/allocation.h"
 #include "vm/token_position.h"
@@ -86,4 +86,4 @@
 
 }  // namespace dart
 
-#endif  // VM_EXCEPTIONS_H_
+#endif  // RUNTIME_VM_EXCEPTIONS_H_
diff --git a/runtime/vm/flag_list.h b/runtime/vm/flag_list.h
index c8ceb68..6b2e631 100644
--- a/runtime/vm/flag_list.h
+++ b/runtime/vm/flag_list.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLAG_LIST_H_
-#define VM_FLAG_LIST_H_
+#ifndef RUNTIME_VM_FLAG_LIST_H_
+#define RUNTIME_VM_FLAG_LIST_H_
 
 // Don't use USING_DBC outside of this file.
 #if defined(TARGET_ARCH_DBC)
@@ -201,4 +201,4 @@
 D(verify_on_transition, bool, false,                                           \
   "Verify on dart <==> VM.")                                                   \
 
-#endif  // VM_FLAG_LIST_H_
+#endif  // RUNTIME_VM_FLAG_LIST_H_
diff --git a/runtime/vm/flags.h b/runtime/vm/flags.h
index b30299c..2d882d0 100644
--- a/runtime/vm/flags.h
+++ b/runtime/vm/flags.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLAGS_H_
-#define VM_FLAGS_H_
+#ifndef RUNTIME_VM_FLAGS_H_
+#define RUNTIME_VM_FLAGS_H_
 
 #include "platform/assert.h"
 #include "vm/flag_list.h"
@@ -157,4 +157,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FLAGS_H_
+#endif  // RUNTIME_VM_FLAGS_H_
diff --git a/runtime/vm/flow_graph.h b/runtime/vm/flow_graph.h
index e4a0a3c..1b71083 100644
--- a/runtime/vm/flow_graph.h
+++ b/runtime/vm/flow_graph.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLOW_GRAPH_H_
-#define VM_FLOW_GRAPH_H_
+#ifndef RUNTIME_VM_FLOW_GRAPH_H_
+#define RUNTIME_VM_FLOW_GRAPH_H_
 
 #include "vm/bit_vector.h"
 #include "vm/growable_array.h"
@@ -566,4 +566,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FLOW_GRAPH_H_
+#endif  // RUNTIME_VM_FLOW_GRAPH_H_
diff --git a/runtime/vm/flow_graph_allocator.h b/runtime/vm/flow_graph_allocator.h
index 34804eb..6cd79e0 100644
--- a/runtime/vm/flow_graph_allocator.h
+++ b/runtime/vm/flow_graph_allocator.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLOW_GRAPH_ALLOCATOR_H_
-#define VM_FLOW_GRAPH_ALLOCATOR_H_
+#ifndef RUNTIME_VM_FLOW_GRAPH_ALLOCATOR_H_
+#define RUNTIME_VM_FLOW_GRAPH_ALLOCATOR_H_
 
 #include "vm/flow_graph.h"
 #include "vm/growable_array.h"
@@ -684,4 +684,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FLOW_GRAPH_ALLOCATOR_H_
+#endif  // RUNTIME_VM_FLOW_GRAPH_ALLOCATOR_H_
diff --git a/runtime/vm/flow_graph_builder.h b/runtime/vm/flow_graph_builder.h
index 870773b..19dc316 100644
--- a/runtime/vm/flow_graph_builder.h
+++ b/runtime/vm/flow_graph_builder.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLOW_GRAPH_BUILDER_H_
-#define VM_FLOW_GRAPH_BUILDER_H_
+#ifndef RUNTIME_VM_FLOW_GRAPH_BUILDER_H_
+#define RUNTIME_VM_FLOW_GRAPH_BUILDER_H_
 
 #include "platform/assert.h"
 #include "platform/globals.h"
@@ -585,4 +585,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FLOW_GRAPH_BUILDER_H_
+#endif  // RUNTIME_VM_FLOW_GRAPH_BUILDER_H_
diff --git a/runtime/vm/flow_graph_compiler.h b/runtime/vm/flow_graph_compiler.h
index 165cded..a43c6af 100644
--- a/runtime/vm/flow_graph_compiler.h
+++ b/runtime/vm/flow_graph_compiler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLOW_GRAPH_COMPILER_H_
-#define VM_FLOW_GRAPH_COMPILER_H_
+#ifndef RUNTIME_VM_FLOW_GRAPH_COMPILER_H_
+#define RUNTIME_VM_FLOW_GRAPH_COMPILER_H_
 
 #include "vm/allocation.h"
 #include "vm/assembler.h"
@@ -802,4 +802,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FLOW_GRAPH_COMPILER_H_
+#endif  // RUNTIME_VM_FLOW_GRAPH_COMPILER_H_
diff --git a/runtime/vm/flow_graph_inliner.h b/runtime/vm/flow_graph_inliner.h
index 77a903a..ccf7d39 100644
--- a/runtime/vm/flow_graph_inliner.h
+++ b/runtime/vm/flow_graph_inliner.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLOW_GRAPH_INLINER_H_
-#define VM_FLOW_GRAPH_INLINER_H_
+#ifndef RUNTIME_VM_FLOW_GRAPH_INLINER_H_
+#define RUNTIME_VM_FLOW_GRAPH_INLINER_H_
 
 #include "vm/allocation.h"
 #include "vm/growable_array.h"
@@ -83,4 +83,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FLOW_GRAPH_INLINER_H_
+#endif  // RUNTIME_VM_FLOW_GRAPH_INLINER_H_
diff --git a/runtime/vm/flow_graph_range_analysis.h b/runtime/vm/flow_graph_range_analysis.h
index 691fff5..a1e1ba3 100644
--- a/runtime/vm/flow_graph_range_analysis.h
+++ b/runtime/vm/flow_graph_range_analysis.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLOW_GRAPH_RANGE_ANALYSIS_H_
-#define VM_FLOW_GRAPH_RANGE_ANALYSIS_H_
+#ifndef RUNTIME_VM_FLOW_GRAPH_RANGE_ANALYSIS_H_
+#define RUNTIME_VM_FLOW_GRAPH_RANGE_ANALYSIS_H_
 
 #include "vm/flow_graph.h"
 #include "vm/intermediate_language.h"
@@ -663,4 +663,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FLOW_GRAPH_RANGE_ANALYSIS_H_
+#endif  // RUNTIME_VM_FLOW_GRAPH_RANGE_ANALYSIS_H_
diff --git a/runtime/vm/flow_graph_type_propagator.h b/runtime/vm/flow_graph_type_propagator.h
index 84229c5..421b76e 100644
--- a/runtime/vm/flow_graph_type_propagator.h
+++ b/runtime/vm/flow_graph_type_propagator.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FLOW_GRAPH_TYPE_PROPAGATOR_H_
-#define VM_FLOW_GRAPH_TYPE_PROPAGATOR_H_
+#ifndef RUNTIME_VM_FLOW_GRAPH_TYPE_PROPAGATOR_H_
+#define RUNTIME_VM_FLOW_GRAPH_TYPE_PROPAGATOR_H_
 
 #include "vm/flow_graph.h"
 #include "vm/intermediate_language.h"
@@ -98,4 +98,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FLOW_GRAPH_TYPE_PROPAGATOR_H_
+#endif  // RUNTIME_VM_FLOW_GRAPH_TYPE_PROPAGATOR_H_
diff --git a/runtime/vm/freelist.h b/runtime/vm/freelist.h
index 975e50c..22744a1 100644
--- a/runtime/vm/freelist.h
+++ b/runtime/vm/freelist.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_FREELIST_H_
-#define VM_FREELIST_H_
+#ifndef RUNTIME_VM_FREELIST_H_
+#define RUNTIME_VM_FREELIST_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -134,4 +134,4 @@
 
 }  // namespace dart
 
-#endif  // VM_FREELIST_H_
+#endif  // RUNTIME_VM_FREELIST_H_
diff --git a/runtime/vm/gc_marker.h b/runtime/vm/gc_marker.h
index f1e473a..5a5f2ea 100644
--- a/runtime/vm/gc_marker.h
+++ b/runtime/vm/gc_marker.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_GC_MARKER_H_
-#define VM_GC_MARKER_H_
+#ifndef RUNTIME_VM_GC_MARKER_H_
+#define RUNTIME_VM_GC_MARKER_H_
 
 #include "vm/allocation.h"
 #include "vm/os_thread.h"  // Mutex.
@@ -61,4 +61,4 @@
 
 }  // namespace dart
 
-#endif  // VM_GC_MARKER_H_
+#endif  // RUNTIME_VM_GC_MARKER_H_
diff --git a/runtime/vm/gc_sweeper.h b/runtime/vm/gc_sweeper.h
index b2b8317..ba9aaef 100644
--- a/runtime/vm/gc_sweeper.h
+++ b/runtime/vm/gc_sweeper.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_GC_SWEEPER_H_
-#define VM_GC_SWEEPER_H_
+#ifndef RUNTIME_VM_GC_SWEEPER_H_
+#define RUNTIME_VM_GC_SWEEPER_H_
 
 #include "vm/globals.h"
 
@@ -43,4 +43,4 @@
 
 }  // namespace dart
 
-#endif  // VM_GC_SWEEPER_H_
+#endif  // RUNTIME_VM_GC_SWEEPER_H_
diff --git a/runtime/vm/globals.h b/runtime/vm/globals.h
index 9fd69e2..e65cb7d 100644
--- a/runtime/vm/globals.h
+++ b/runtime/vm/globals.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_GLOBALS_H_
-#define VM_GLOBALS_H_
+#ifndef RUNTIME_VM_GLOBALS_H_
+#define RUNTIME_VM_GLOBALS_H_
 
 // This file contains global definitions for the VM library only. Anything that
 // is more globally useful should be added to 'vm/globals.h'.
@@ -132,4 +132,4 @@
 
 }  // namespace dart
 
-#endif  // VM_GLOBALS_H_
+#endif  // RUNTIME_VM_GLOBALS_H_
diff --git a/runtime/vm/growable_array.h b/runtime/vm/growable_array.h
index 42b787b..09df060 100644
--- a/runtime/vm/growable_array.h
+++ b/runtime/vm/growable_array.h
@@ -7,8 +7,8 @@
 // - MallocGrowableArray: allocates using malloc/realloc; free is only called
 //   at destruction.
 
-#ifndef VM_GROWABLE_ARRAY_H_
-#define VM_GROWABLE_ARRAY_H_
+#ifndef RUNTIME_VM_GROWABLE_ARRAY_H_
+#define RUNTIME_VM_GROWABLE_ARRAY_H_
 
 #include "platform/utils.h"
 #include "vm/allocation.h"
@@ -294,4 +294,4 @@
 
 }  // namespace dart
 
-#endif  // VM_GROWABLE_ARRAY_H_
+#endif  // RUNTIME_VM_GROWABLE_ARRAY_H_
diff --git a/runtime/vm/handles.h b/runtime/vm/handles.h
index aab078c..1b4c7bd 100644
--- a/runtime/vm/handles.h
+++ b/runtime/vm/handles.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_HANDLES_H_
-#define VM_HANDLES_H_
+#ifndef RUNTIME_VM_HANDLES_H_
+#define RUNTIME_VM_HANDLES_H_
 
 #include "vm/allocation.h"
 #include "vm/flags.h"
@@ -356,4 +356,4 @@
 
 }  // namespace dart
 
-#endif  // VM_HANDLES_H_
+#endif  // RUNTIME_VM_HANDLES_H_
diff --git a/runtime/vm/handles_impl.h b/runtime/vm/handles_impl.h
index bf44e63..eb7be5e 100644
--- a/runtime/vm/handles_impl.h
+++ b/runtime/vm/handles_impl.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_HANDLES_IMPL_H_
-#define VM_HANDLES_IMPL_H_
+#ifndef RUNTIME_VM_HANDLES_IMPL_H_
+#define RUNTIME_VM_HANDLES_IMPL_H_
 
 #include "vm/heap.h"
 #include "vm/thread.h"
@@ -368,4 +368,4 @@
 
 }  // namespace dart
 
-#endif  // VM_HANDLES_IMPL_H_
+#endif  // RUNTIME_VM_HANDLES_IMPL_H_
diff --git a/runtime/vm/hash_map.h b/runtime/vm/hash_map.h
index d703c0a..88d45ff 100644
--- a/runtime/vm/hash_map.h
+++ b/runtime/vm/hash_map.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_HASH_MAP_H_
-#define VM_HASH_MAP_H_
+#ifndef RUNTIME_VM_HASH_MAP_H_
+#define RUNTIME_VM_HASH_MAP_H_
 
 #include "vm/growable_array.h"  // For Malloc, EmptyBase
 #include "vm/zone.h"
@@ -387,4 +387,4 @@
 
 }  // namespace dart
 
-#endif  // VM_HASH_MAP_H_
+#endif  // RUNTIME_VM_HASH_MAP_H_
diff --git a/runtime/vm/hash_table.h b/runtime/vm/hash_table.h
index f1079b8..5835b22 100644
--- a/runtime/vm/hash_table.h
+++ b/runtime/vm/hash_table.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_HASH_TABLE_H_
-#define VM_HASH_TABLE_H_
+#ifndef RUNTIME_VM_HASH_TABLE_H_
+#define RUNTIME_VM_HASH_TABLE_H_
 
 #include "platform/assert.h"
 #include "vm/object.h"
@@ -704,4 +704,4 @@
 
 }  // namespace dart
 
-#endif  // VM_HASH_TABLE_H_
+#endif  // RUNTIME_VM_HASH_TABLE_H_
diff --git a/runtime/vm/heap.h b/runtime/vm/heap.h
index deae0a0..30210bc 100644
--- a/runtime/vm/heap.h
+++ b/runtime/vm/heap.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_HEAP_H_
-#define VM_HEAP_H_
+#ifndef RUNTIME_VM_HEAP_H_
+#define RUNTIME_VM_HEAP_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -396,4 +396,4 @@
 
 }  // namespace dart
 
-#endif  // VM_HEAP_H_
+#endif  // RUNTIME_VM_HEAP_H_
diff --git a/runtime/vm/il_printer.h b/runtime/vm/il_printer.h
index b800ab7..88496fb 100644
--- a/runtime/vm/il_printer.h
+++ b/runtime/vm/il_printer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_IL_PRINTER_H_
-#define VM_IL_PRINTER_H_
+#ifndef RUNTIME_VM_IL_PRINTER_H_
+#define RUNTIME_VM_IL_PRINTER_H_
 
 #include "vm/flow_graph.h"
 #include "vm/intermediate_language.h"
@@ -76,4 +76,4 @@
 
 }  // namespace dart
 
-#endif  // VM_IL_PRINTER_H_
+#endif  // RUNTIME_VM_IL_PRINTER_H_
diff --git a/runtime/vm/instructions.h b/runtime/vm/instructions.h
index 2274bec..8b14145 100644
--- a/runtime/vm/instructions.h
+++ b/runtime/vm/instructions.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_INSTRUCTIONS_H_
-#define VM_INSTRUCTIONS_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_H_
+#define RUNTIME_VM_INSTRUCTIONS_H_
 
 #include "vm/globals.h"
 
@@ -34,4 +34,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INSTRUCTIONS_H_
+#endif  // RUNTIME_VM_INSTRUCTIONS_H_
diff --git a/runtime/vm/instructions_arm.cc b/runtime/vm/instructions_arm.cc
index a3abab8..1541f40 100644
--- a/runtime/vm/instructions_arm.cc
+++ b/runtime/vm/instructions_arm.cc
@@ -5,10 +5,12 @@
 #include "vm/globals.h"  // Needed here to get TARGET_ARCH_ARM.
 #if defined(TARGET_ARCH_ARM)
 
+#include "vm/instructions.h"
+#include "vm/instructions_arm.h"
+
 #include "vm/assembler.h"
 #include "vm/constants_arm.h"
 #include "vm/cpu.h"
-#include "vm/instructions.h"
 #include "vm/object.h"
 
 namespace dart {
diff --git a/runtime/vm/instructions_arm.h b/runtime/vm/instructions_arm.h
index 687cf7e..efaa73b 100644
--- a/runtime/vm/instructions_arm.h
+++ b/runtime/vm/instructions_arm.h
@@ -3,10 +3,10 @@
 // BSD-style license that can be found in the LICENSE file.
 // Classes that describe assembly patterns as used by inline caches.
 
-#ifndef VM_INSTRUCTIONS_ARM_H_
-#define VM_INSTRUCTIONS_ARM_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_ARM_H_
+#define RUNTIME_VM_INSTRUCTIONS_ARM_H_
 
-#ifndef VM_INSTRUCTIONS_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_H_
 #error Do not include instructions_arm.h directly; use instructions.h instead.
 #endif
 
@@ -133,4 +133,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INSTRUCTIONS_ARM_H_
+#endif  // RUNTIME_VM_INSTRUCTIONS_ARM_H_
diff --git a/runtime/vm/instructions_arm64.cc b/runtime/vm/instructions_arm64.cc
index 674e68a..0895ae9 100644
--- a/runtime/vm/instructions_arm64.cc
+++ b/runtime/vm/instructions_arm64.cc
@@ -5,10 +5,12 @@
 #include "vm/globals.h"  // Needed here to get TARGET_ARCH_ARM64.
 #if defined(TARGET_ARCH_ARM64)
 
+#include "vm/instructions.h"
+#include "vm/instructions_arm64.h"
+
 #include "vm/assembler.h"
 #include "vm/constants_arm64.h"
 #include "vm/cpu.h"
-#include "vm/instructions.h"
 #include "vm/object.h"
 
 namespace dart {
diff --git a/runtime/vm/instructions_arm64.h b/runtime/vm/instructions_arm64.h
index e3c1d4d..e86a306 100644
--- a/runtime/vm/instructions_arm64.h
+++ b/runtime/vm/instructions_arm64.h
@@ -3,10 +3,10 @@
 // BSD-style license that can be found in the LICENSE file.
 // Classes that describe assembly patterns as used by inline caches.
 
-#ifndef VM_INSTRUCTIONS_ARM64_H_
-#define VM_INSTRUCTIONS_ARM64_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_ARM64_H_
+#define RUNTIME_VM_INSTRUCTIONS_ARM64_H_
 
-#ifndef VM_INSTRUCTIONS_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_H_
 #error Do not include instructions_arm64.h directly; use instructions.h instead.
 #endif
 
@@ -140,4 +140,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INSTRUCTIONS_ARM64_H_
+#endif  // RUNTIME_VM_INSTRUCTIONS_ARM64_H_
diff --git a/runtime/vm/instructions_dbc.h b/runtime/vm/instructions_dbc.h
index a10dcc0..e0ea799 100644
--- a/runtime/vm/instructions_dbc.h
+++ b/runtime/vm/instructions_dbc.h
@@ -3,10 +3,10 @@
 // BSD-style license that can be found in the LICENSE file.
 // Classes that describe assembly patterns as used by inline caches.
 
-#ifndef VM_INSTRUCTIONS_DBC_H_
-#define VM_INSTRUCTIONS_DBC_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_DBC_H_
+#define RUNTIME_VM_INSTRUCTIONS_DBC_H_
 
-#ifndef VM_INSTRUCTIONS_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_H_
 #error Do not include instructions_dbc.h directly; use instructions.h instead.
 #endif
 
@@ -135,4 +135,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INSTRUCTIONS_DBC_H_
+#endif  // RUNTIME_VM_INSTRUCTIONS_DBC_H_
diff --git a/runtime/vm/instructions_ia32.cc b/runtime/vm/instructions_ia32.cc
index 2b9f638..fa36c84 100644
--- a/runtime/vm/instructions_ia32.cc
+++ b/runtime/vm/instructions_ia32.cc
@@ -5,8 +5,10 @@
 #include "vm/globals.h"  // Needed here to get TARGET_ARCH_IA32.
 #if defined(TARGET_ARCH_IA32)
 
-#include "vm/cpu.h"
 #include "vm/instructions.h"
+#include "vm/instructions_ia32.h"
+
+#include "vm/cpu.h"
 #include "vm/object.h"
 
 namespace dart {
diff --git a/runtime/vm/instructions_ia32.h b/runtime/vm/instructions_ia32.h
index 33d648f..4be887f 100644
--- a/runtime/vm/instructions_ia32.h
+++ b/runtime/vm/instructions_ia32.h
@@ -3,10 +3,10 @@
 // BSD-style license that can be found in the LICENSE file.
 // Classes that describe assembly patterns as used by inline caches.
 
-#ifndef VM_INSTRUCTIONS_IA32_H_
-#define VM_INSTRUCTIONS_IA32_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_IA32_H_
+#define RUNTIME_VM_INSTRUCTIONS_IA32_H_
 
-#ifndef VM_INSTRUCTIONS_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_H_
 #error Do not include instructions_ia32.h directly; use instructions.h instead.
 #endif
 
@@ -144,4 +144,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INSTRUCTIONS_IA32_H_
+#endif  // RUNTIME_VM_INSTRUCTIONS_IA32_H_
diff --git a/runtime/vm/instructions_mips.cc b/runtime/vm/instructions_mips.cc
index cc51a3d..547b6fe 100644
--- a/runtime/vm/instructions_mips.cc
+++ b/runtime/vm/instructions_mips.cc
@@ -5,9 +5,11 @@
 #include "vm/globals.h"  // Needed here to get TARGET_ARCH_MIPS.
 #if defined(TARGET_ARCH_MIPS)
 
+#include "vm/instructions.h"
+#include "vm/instructions_mips.h"
+
 #include "vm/constants_mips.h"
 #include "vm/cpu.h"
-#include "vm/instructions.h"
 #include "vm/object.h"
 
 namespace dart {
diff --git a/runtime/vm/instructions_mips.h b/runtime/vm/instructions_mips.h
index 95f04f7..83907cb 100644
--- a/runtime/vm/instructions_mips.h
+++ b/runtime/vm/instructions_mips.h
@@ -3,10 +3,10 @@
 // BSD-style license that can be found in the LICENSE file.
 // Classes that describe assembly patterns as used by inline caches.
 
-#ifndef VM_INSTRUCTIONS_MIPS_H_
-#define VM_INSTRUCTIONS_MIPS_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_MIPS_H_
+#define RUNTIME_VM_INSTRUCTIONS_MIPS_H_
 
-#ifndef VM_INSTRUCTIONS_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_H_
 #error Do not include instructions_mips.h directly; use instructions.h instead.
 #endif
 
@@ -133,4 +133,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INSTRUCTIONS_MIPS_H_
+#endif  // RUNTIME_VM_INSTRUCTIONS_MIPS_H_
diff --git a/runtime/vm/instructions_x64.cc b/runtime/vm/instructions_x64.cc
index fe0c6ef..efebc15 100644
--- a/runtime/vm/instructions_x64.cc
+++ b/runtime/vm/instructions_x64.cc
@@ -5,9 +5,11 @@
 #include "vm/globals.h"  // Needed here to get TARGET_ARCH_X64.
 #if defined(TARGET_ARCH_X64)
 
+#include "vm/instructions.h"
+#include "vm/instructions_x64.h"
+
 #include "vm/cpu.h"
 #include "vm/constants_x64.h"
-#include "vm/instructions.h"
 #include "vm/object.h"
 
 namespace dart {
diff --git a/runtime/vm/instructions_x64.h b/runtime/vm/instructions_x64.h
index 97c52e9..ba86ee4 100644
--- a/runtime/vm/instructions_x64.h
+++ b/runtime/vm/instructions_x64.h
@@ -3,10 +3,10 @@
 // BSD-style license that can be found in the LICENSE file.
 // Classes that describe assembly patterns as used by inline caches.
 
-#ifndef VM_INSTRUCTIONS_X64_H_
-#define VM_INSTRUCTIONS_X64_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_X64_H_
+#define RUNTIME_VM_INSTRUCTIONS_X64_H_
 
-#ifndef VM_INSTRUCTIONS_H_
+#ifndef RUNTIME_VM_INSTRUCTIONS_H_
 #error Do not include instructions_ia32.h directly; use instructions.h instead.
 #endif
 
@@ -121,4 +121,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INSTRUCTIONS_X64_H_
+#endif  // RUNTIME_VM_INSTRUCTIONS_X64_H_
diff --git a/runtime/vm/intermediate_language.h b/runtime/vm/intermediate_language.h
index 2876be7..8e7241a 100644
--- a/runtime/vm/intermediate_language.h
+++ b/runtime/vm/intermediate_language.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_INTERMEDIATE_LANGUAGE_H_
-#define VM_INTERMEDIATE_LANGUAGE_H_
+#ifndef RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_
+#define RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_
 
 #include "vm/allocation.h"
 #include "vm/ast.h"
@@ -8389,4 +8389,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INTERMEDIATE_LANGUAGE_H_
+#endif  // RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_
diff --git a/runtime/vm/intermediate_language_arm64.cc b/runtime/vm/intermediate_language_arm64.cc
index 3503a99..22fac28 100644
--- a/runtime/vm/intermediate_language_arm64.cc
+++ b/runtime/vm/intermediate_language_arm64.cc
@@ -5130,7 +5130,7 @@
     //    }
     //  }
     Label done;
-    __ CompareRegisters(result_mod, ZR);;
+    __ CompareRegisters(result_mod, ZR);
     __ b(&done, GE);
     // Result is negative, adjust it.
     __ CompareRegisters(right, ZR);
diff --git a/runtime/vm/intrinsifier.h b/runtime/vm/intrinsifier.h
index 7226d3ac..37cf5ef 100644
--- a/runtime/vm/intrinsifier.h
+++ b/runtime/vm/intrinsifier.h
@@ -3,8 +3,8 @@
 // BSD-style license that can be found in the LICENSE file.
 // Class for intrinsifying functions.
 
-#ifndef VM_INTRINSIFIER_H_
-#define VM_INTRINSIFIER_H_
+#ifndef RUNTIME_VM_INTRINSIFIER_H_
+#define RUNTIME_VM_INTRINSIFIER_H_
 
 #include "vm/allocation.h"
 #include "vm/method_recognizer.h"
@@ -61,4 +61,4 @@
 
 }  // namespace dart
 
-#endif  // VM_INTRINSIFIER_H_
+#endif  // RUNTIME_VM_INTRINSIFIER_H_
diff --git a/runtime/vm/isolate.cc b/runtime/vm/isolate.cc
index 96af2b6..7fdbe56b 100644
--- a/runtime/vm/isolate.cc
+++ b/runtime/vm/isolate.cc
@@ -681,7 +681,7 @@
     if (!tmp.IsString()) {
       tmp = String::New(stacktrace.ToCString());
     }
-    stacktrace_str ^= tmp.raw();;
+    stacktrace_str ^= tmp.raw();
   } else {
     exc_str = String::New(result.ToErrorCString());
   }
diff --git a/runtime/vm/isolate.h b/runtime/vm/isolate.h
index e85d4da..f29f666 100644
--- a/runtime/vm/isolate.h
+++ b/runtime/vm/isolate.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ISOLATE_H_
-#define VM_ISOLATE_H_
+#ifndef RUNTIME_VM_ISOLATE_H_
+#define RUNTIME_VM_ISOLATE_H_
 
 #include "include/dart_api.h"
 #include "platform/assert.h"
@@ -1029,4 +1029,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ISOLATE_H_
+#endif  // RUNTIME_VM_ISOLATE_H_
diff --git a/runtime/vm/isolate_reload.cc b/runtime/vm/isolate_reload.cc
index 2b00272..6bd57d7 100644
--- a/runtime/vm/isolate_reload.cc
+++ b/runtime/vm/isolate_reload.cc
@@ -1395,7 +1395,7 @@
     if (code.is_optimized()) {
       // If this code is optimized, we need to reset the ICs in the
       // corresponding unoptimized code, which will be executed when the stack
-      // unwinds to the the optimized code.
+      // unwinds to the optimized code.
       function = code.function();
       code = function.unoptimized_code();
       ASSERT(!code.IsNull());
diff --git a/runtime/vm/isolate_reload.h b/runtime/vm/isolate_reload.h
index ce16bef..e8fbd3a 100644
--- a/runtime/vm/isolate_reload.h
+++ b/runtime/vm/isolate_reload.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ISOLATE_RELOAD_H_
-#define VM_ISOLATE_RELOAD_H_
+#ifndef RUNTIME_VM_ISOLATE_RELOAD_H_
+#define RUNTIME_VM_ISOLATE_RELOAD_H_
 
 #include "include/dart_tools_api.h"
 
@@ -348,4 +348,4 @@
 
 }  // namespace dart
 
-#endif   // VM_ISOLATE_RELOAD_H_
+#endif   // RUNTIME_VM_ISOLATE_RELOAD_H_
diff --git a/runtime/vm/isolate_reload_test.cc b/runtime/vm/isolate_reload_test.cc
index e33cb97..c8282e4 100644
--- a/runtime/vm/isolate_reload_test.cc
+++ b/runtime/vm/isolate_reload_test.cc
@@ -313,7 +313,7 @@
 
   Dart_Handle lib = TestCase::LoadTestScript(kScript, NULL);
   EXPECT_VALID(lib);
-  EXPECT_ERROR(SimpleInvokeError(lib, "main"), "max");;
+  EXPECT_ERROR(SimpleInvokeError(lib, "main"), "max");
 
   const char* kReloadScript =
       "import 'dart:math';\n"
@@ -346,7 +346,7 @@
   lib = TestCase::ReloadTestScript(kReloadScript);
   EXPECT_VALID(lib);
 
-  EXPECT_ERROR(SimpleInvokeError(lib, "main"), "max");;
+  EXPECT_ERROR(SimpleInvokeError(lib, "main"), "max");
 }
 
 
diff --git a/runtime/vm/jit_optimizer.h b/runtime/vm/jit_optimizer.h
index 21a7855..462c1df 100644
--- a/runtime/vm/jit_optimizer.h
+++ b/runtime/vm/jit_optimizer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_JIT_OPTIMIZER_H_
-#define VM_JIT_OPTIMIZER_H_
+#ifndef RUNTIME_VM_JIT_OPTIMIZER_H_
+#define RUNTIME_VM_JIT_OPTIMIZER_H_
 
 #include "vm/intermediate_language.h"
 #include "vm/flow_graph.h"
@@ -134,4 +134,4 @@
 
 }  // namespace dart
 
-#endif  // VM_JIT_OPTIMIZER_H_
+#endif  // RUNTIME_VM_JIT_OPTIMIZER_H_
diff --git a/runtime/vm/json_stream.h b/runtime/vm/json_stream.h
index 2dac1c7..17daf88 100644
--- a/runtime/vm/json_stream.h
+++ b/runtime/vm/json_stream.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_JSON_STREAM_H_
-#define VM_JSON_STREAM_H_
+#ifndef RUNTIME_VM_JSON_STREAM_H_
+#define RUNTIME_VM_JSON_STREAM_H_
 
 #include "include/dart_api.h"  // for Dart_Port
 #include "platform/text_buffer.h"
@@ -434,4 +434,4 @@
 
 }  // namespace dart
 
-#endif  // VM_JSON_STREAM_H_
+#endif  // RUNTIME_VM_JSON_STREAM_H_
diff --git a/runtime/vm/kernel.h b/runtime/vm/kernel.h
index b6038fc..5133ce9 100644
--- a/runtime/vm/kernel.h
+++ b/runtime/vm/kernel.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_KERNEL_H_
-#define VM_KERNEL_H_
+#ifndef RUNTIME_VM_KERNEL_H_
+#define RUNTIME_VM_KERNEL_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -3240,4 +3240,4 @@
 
 }  // namespace dart
 
-#endif  // VM_KERNEL_H_
+#endif  // RUNTIME_VM_KERNEL_H_
diff --git a/runtime/vm/kernel_reader.h b/runtime/vm/kernel_reader.h
index a53d572..e6d9e55 100644
--- a/runtime/vm/kernel_reader.h
+++ b/runtime/vm/kernel_reader.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_KERNEL_READER_H_
-#define VM_KERNEL_READER_H_
+#ifndef RUNTIME_VM_KERNEL_READER_H_
+#define RUNTIME_VM_KERNEL_READER_H_
 
 #include <map>
 
@@ -117,4 +117,4 @@
 }  // namespace kernel
 }  // namespace dart
 
-#endif  // VM_KERNEL_READER_H_
+#endif  // RUNTIME_VM_KERNEL_READER_H_
diff --git a/runtime/vm/kernel_to_il.h b/runtime/vm/kernel_to_il.h
index 6f50949..20b9aeb 100644
--- a/runtime/vm/kernel_to_il.h
+++ b/runtime/vm/kernel_to_il.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_KERNEL_TO_IL_H_
-#define VM_KERNEL_TO_IL_H_
+#ifndef RUNTIME_VM_KERNEL_TO_IL_H_
+#define RUNTIME_VM_KERNEL_TO_IL_H_
 
 #include "vm/growable_array.h"
 #include "vm/hash_map.h"
@@ -836,4 +836,4 @@
 }  // namespace dart
 
 
-#endif  // VM_KERNEL_TO_IL_H_
+#endif  // RUNTIME_VM_KERNEL_TO_IL_H_
diff --git a/runtime/vm/locations.h b/runtime/vm/locations.h
index 0692007..e81c96b 100644
--- a/runtime/vm/locations.h
+++ b/runtime/vm/locations.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_LOCATIONS_H_
-#define VM_LOCATIONS_H_
+#ifndef RUNTIME_VM_LOCATIONS_H_
+#define RUNTIME_VM_LOCATIONS_H_
 
 #include "vm/allocation.h"
 #include "vm/assembler.h"
@@ -727,4 +727,4 @@
 
 }  // namespace dart
 
-#endif  // VM_LOCATIONS_H_
+#endif  // RUNTIME_VM_LOCATIONS_H_
diff --git a/runtime/vm/lockers.h b/runtime/vm/lockers.h
index a0b1a17..1ffe532 100644
--- a/runtime/vm/lockers.h
+++ b/runtime/vm/lockers.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_LOCKERS_H_
-#define VM_LOCKERS_H_
+#ifndef RUNTIME_VM_LOCKERS_H_
+#define RUNTIME_VM_LOCKERS_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -258,4 +258,4 @@
 }  // namespace dart
 
 
-#endif  // VM_LOCKERS_H_
+#endif  // RUNTIME_VM_LOCKERS_H_
diff --git a/runtime/vm/log.h b/runtime/vm/log.h
index a2f18fa..e6cc336 100644
--- a/runtime/vm/log.h
+++ b/runtime/vm/log.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_LOG_H_
-#define VM_LOG_H_
+#ifndef RUNTIME_VM_LOG_H_
+#define RUNTIME_VM_LOG_H_
 
 #include "vm/allocation.h"
 #include "vm/growable_array.h"
@@ -98,4 +98,4 @@
 
 }  // namespace dart
 
-#endif  // VM_LOG_H_
+#endif  // RUNTIME_VM_LOG_H_
diff --git a/runtime/vm/longjump.h b/runtime/vm/longjump.h
index ce4f813..b62230f 100644
--- a/runtime/vm/longjump.h
+++ b/runtime/vm/longjump.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_LONGJUMP_H_
-#define VM_LONGJUMP_H_
+#ifndef RUNTIME_VM_LONGJUMP_H_
+#define RUNTIME_VM_LONGJUMP_H_
 
 #include <setjmp.h>
 
@@ -45,4 +45,4 @@
 
 }  // namespace dart
 
-#endif  // VM_LONGJUMP_H_
+#endif  // RUNTIME_VM_LONGJUMP_H_
diff --git a/runtime/vm/megamorphic_cache_table.h b/runtime/vm/megamorphic_cache_table.h
index 4c7242a..ee65118 100644
--- a/runtime/vm/megamorphic_cache_table.h
+++ b/runtime/vm/megamorphic_cache_table.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_MEGAMORPHIC_CACHE_TABLE_H_
-#define VM_MEGAMORPHIC_CACHE_TABLE_H_
+#ifndef RUNTIME_VM_MEGAMORPHIC_CACHE_TABLE_H_
+#define RUNTIME_VM_MEGAMORPHIC_CACHE_TABLE_H_
 
 #include "vm/allocation.h"
 
@@ -34,4 +34,4 @@
 
 }  // namespace dart
 
-#endif  // VM_MEGAMORPHIC_CACHE_TABLE_H_
+#endif  // RUNTIME_VM_MEGAMORPHIC_CACHE_TABLE_H_
diff --git a/runtime/vm/memory_region.h b/runtime/vm/memory_region.h
index eaa5221..807588b 100644
--- a/runtime/vm/memory_region.h
+++ b/runtime/vm/memory_region.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_MEMORY_REGION_H_
-#define VM_MEMORY_REGION_H_
+#ifndef RUNTIME_VM_MEMORY_REGION_H_
+#define RUNTIME_VM_MEMORY_REGION_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -79,4 +79,4 @@
 
 }  // namespace dart
 
-#endif  // VM_MEMORY_REGION_H_
+#endif  // RUNTIME_VM_MEMORY_REGION_H_
diff --git a/runtime/vm/message.h b/runtime/vm/message.h
index aaa14c7..7227e73 100644
--- a/runtime/vm/message.h
+++ b/runtime/vm/message.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_MESSAGE_H_
-#define VM_MESSAGE_H_
+#ifndef RUNTIME_VM_MESSAGE_H_
+#define RUNTIME_VM_MESSAGE_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -169,4 +169,4 @@
 
 }  // namespace dart
 
-#endif  // VM_MESSAGE_H_
+#endif  // RUNTIME_VM_MESSAGE_H_
diff --git a/runtime/vm/message_handler.h b/runtime/vm/message_handler.h
index 825e3d3..150dac6 100644
--- a/runtime/vm/message_handler.h
+++ b/runtime/vm/message_handler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_MESSAGE_HANDLER_H_
-#define VM_MESSAGE_HANDLER_H_
+#ifndef RUNTIME_VM_MESSAGE_HANDLER_H_
+#define RUNTIME_VM_MESSAGE_HANDLER_H_
 
 #include "vm/isolate.h"
 #include "vm/lockers.h"
@@ -258,4 +258,4 @@
 
 }  // namespace dart
 
-#endif  // VM_MESSAGE_HANDLER_H_
+#endif  // RUNTIME_VM_MESSAGE_HANDLER_H_
diff --git a/runtime/vm/method_recognizer.h b/runtime/vm/method_recognizer.h
index 04f49ed..b110916 100644
--- a/runtime/vm/method_recognizer.h
+++ b/runtime/vm/method_recognizer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_METHOD_RECOGNIZER_H_
-#define VM_METHOD_RECOGNIZER_H_
+#ifndef RUNTIME_VM_METHOD_RECOGNIZER_H_
+#define RUNTIME_VM_METHOD_RECOGNIZER_H_
 
 #include "vm/allocation.h"
 
@@ -557,4 +557,4 @@
 
 }  // namespace dart
 
-#endif  // VM_METHOD_RECOGNIZER_H_
+#endif  // RUNTIME_VM_METHOD_RECOGNIZER_H_
diff --git a/runtime/vm/metrics.h b/runtime/vm/metrics.h
index c34f02d..6694585 100644
--- a/runtime/vm/metrics.h
+++ b/runtime/vm/metrics.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_METRICS_H_
-#define VM_METRICS_H_
+#ifndef RUNTIME_VM_METRICS_H_
+#define RUNTIME_VM_METRICS_H_
 
 #include "vm/allocation.h"
 
@@ -179,4 +179,4 @@
 
 }  // namespace dart
 
-#endif  // VM_METRICS_H_
+#endif  // RUNTIME_VM_METRICS_H_
diff --git a/runtime/vm/native_arguments.h b/runtime/vm/native_arguments.h
index 2f94d8f..3586569 100644
--- a/runtime/vm/native_arguments.h
+++ b/runtime/vm/native_arguments.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_NATIVE_ARGUMENTS_H_
-#define VM_NATIVE_ARGUMENTS_H_
+#ifndef RUNTIME_VM_NATIVE_ARGUMENTS_H_
+#define RUNTIME_VM_NATIVE_ARGUMENTS_H_
 
 #include "platform/assert.h"
 #include "platform/memory_sanitizer.h"
@@ -262,4 +262,4 @@
 
 }  // namespace dart
 
-#endif  // VM_NATIVE_ARGUMENTS_H_
+#endif  // RUNTIME_VM_NATIVE_ARGUMENTS_H_
diff --git a/runtime/vm/native_entry.h b/runtime/vm/native_entry.h
index 4be2cc3..72531fa 100644
--- a/runtime/vm/native_entry.h
+++ b/runtime/vm/native_entry.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_NATIVE_ENTRY_H_
-#define VM_NATIVE_ENTRY_H_
+#ifndef RUNTIME_VM_NATIVE_ENTRY_H_
+#define RUNTIME_VM_NATIVE_ENTRY_H_
 
 #include "platform/memory_sanitizer.h"
 
@@ -134,4 +134,4 @@
 
 }  // namespace dart
 
-#endif  // VM_NATIVE_ENTRY_H_
+#endif  // RUNTIME_VM_NATIVE_ENTRY_H_
diff --git a/runtime/vm/native_entry_test.h b/runtime/vm/native_entry_test.h
index 706b4b6..682221a 100644
--- a/runtime/vm/native_entry_test.h
+++ b/runtime/vm/native_entry_test.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_NATIVE_ENTRY_TEST_H_
-#define VM_NATIVE_ENTRY_TEST_H_
+#ifndef RUNTIME_VM_NATIVE_ENTRY_TEST_H_
+#define RUNTIME_VM_NATIVE_ENTRY_TEST_H_
 
 #include "include/dart_api.h"
 #include "vm/runtime_entry.h"
@@ -16,4 +16,4 @@
 
 }  // namespace dart
 
-#endif  // VM_NATIVE_ENTRY_TEST_H_
+#endif  // RUNTIME_VM_NATIVE_ENTRY_TEST_H_
diff --git a/runtime/vm/native_message_handler.h b/runtime/vm/native_message_handler.h
index 9a34c77..7133662 100644
--- a/runtime/vm/native_message_handler.h
+++ b/runtime/vm/native_message_handler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_NATIVE_MESSAGE_HANDLER_H_
-#define VM_NATIVE_MESSAGE_HANDLER_H_
+#ifndef RUNTIME_VM_NATIVE_MESSAGE_HANDLER_H_
+#define RUNTIME_VM_NATIVE_MESSAGE_HANDLER_H_
 
 #include "include/dart_api.h"
 #include "include/dart_native_api.h"
@@ -38,4 +38,4 @@
 
 }  // namespace dart
 
-#endif  // VM_NATIVE_MESSAGE_HANDLER_H_
+#endif  // RUNTIME_VM_NATIVE_MESSAGE_HANDLER_H_
diff --git a/runtime/vm/native_symbol.h b/runtime/vm/native_symbol.h
index dec113a..f82f314 100644
--- a/runtime/vm/native_symbol.h
+++ b/runtime/vm/native_symbol.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_NATIVE_SYMBOL_H_
-#define VM_NATIVE_SYMBOL_H_
+#ifndef RUNTIME_VM_NATIVE_SYMBOL_H_
+#define RUNTIME_VM_NATIVE_SYMBOL_H_
 
 #include "vm/allocation.h"
 #include "vm/globals.h"
@@ -23,4 +23,4 @@
 
 }  // namespace dart
 
-#endif  // VM_NATIVE_SYMBOL_H_
+#endif  // RUNTIME_VM_NATIVE_SYMBOL_H_
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
index 58213ac..819ee3c 100644
--- a/runtime/vm/object.cc
+++ b/runtime/vm/object.cc
@@ -15655,7 +15655,8 @@
     const Class& scope_cls = Class::Handle(type.type_class());
     ASSERT(scope_cls.NumTypeArguments() > 0);
     TypeArguments& type_arguments = TypeArguments::Handle(GetTypeArguments());
-    type = Type::New(scope_cls, type_arguments, TokenPosition::kNoSource);
+    type = Type::New(
+        scope_cls, type_arguments, TokenPosition::kNoSource, Heap::kNew);
     type.set_signature(signature);
     type.SetIsFinalized();
     type ^= type.Canonicalize();
@@ -17405,7 +17406,11 @@
     type ^= table.GetOrNull(CanonicalTypeKey(*this));
     if (type.IsNull()) {
       // Add this Type into the canonical list of types.
-      type ^= raw();
+      if (this->IsNew()) {
+        type ^= Object::Clone(*this, Heap::kOld);
+      } else {
+        type ^= this->raw();
+      }
       ASSERT(type.IsOld());
       type.SetCanonical();  // Mark object as being canonical.
       bool present = table.Insert(type);
diff --git a/runtime/vm/object.h b/runtime/vm/object.h
index 5f8ddbf..dcc86c7 100644
--- a/runtime/vm/object.h
+++ b/runtime/vm/object.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OBJECT_H_
-#define VM_OBJECT_H_
+#ifndef RUNTIME_VM_OBJECT_H_
+#define RUNTIME_VM_OBJECT_H_
 
 #include "include/dart_api.h"
 #include "platform/assert.h"
@@ -9017,4 +9017,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OBJECT_H_
+#endif  // RUNTIME_VM_OBJECT_H_
diff --git a/runtime/vm/object_graph.h b/runtime/vm/object_graph.h
index 70091d6..e42e419 100644
--- a/runtime/vm/object_graph.h
+++ b/runtime/vm/object_graph.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OBJECT_GRAPH_H_
-#define VM_OBJECT_GRAPH_H_
+#ifndef RUNTIME_VM_OBJECT_GRAPH_H_
+#define RUNTIME_VM_OBJECT_GRAPH_H_
 
 #include "vm/allocation.h"
 #include "vm/object.h"
@@ -105,4 +105,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OBJECT_GRAPH_H_
+#endif  // RUNTIME_VM_OBJECT_GRAPH_H_
diff --git a/runtime/vm/object_id_ring.h b/runtime/vm/object_id_ring.h
index b3ad0c9..7b0fcde 100644
--- a/runtime/vm/object_id_ring.h
+++ b/runtime/vm/object_id_ring.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OBJECT_ID_RING_H_
-#define VM_OBJECT_ID_RING_H_
+#ifndef RUNTIME_VM_OBJECT_ID_RING_H_
+#define RUNTIME_VM_OBJECT_ID_RING_H_
 
 namespace dart {
 
@@ -86,4 +86,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OBJECT_ID_RING_H_
+#endif  // RUNTIME_VM_OBJECT_ID_RING_H_
diff --git a/runtime/vm/object_set.h b/runtime/vm/object_set.h
index 8ba53ba..f4031fb 100644
--- a/runtime/vm/object_set.h
+++ b/runtime/vm/object_set.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OBJECT_SET_H_
-#define VM_OBJECT_SET_H_
+#ifndef RUNTIME_VM_OBJECT_SET_H_
+#define RUNTIME_VM_OBJECT_SET_H_
 
 #include "platform/utils.h"
 #include "vm/bit_vector.h"
@@ -90,4 +90,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OBJECT_SET_H_
+#endif  // RUNTIME_VM_OBJECT_SET_H_
diff --git a/runtime/vm/object_store.h b/runtime/vm/object_store.h
index 33c25ec..8b5555a 100644
--- a/runtime/vm/object_store.h
+++ b/runtime/vm/object_store.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OBJECT_STORE_H_
-#define VM_OBJECT_STORE_H_
+#ifndef RUNTIME_VM_OBJECT_STORE_H_
+#define RUNTIME_VM_OBJECT_STORE_H_
 
 #include "vm/object.h"
 
@@ -639,4 +639,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OBJECT_STORE_H_
+#endif  // RUNTIME_VM_OBJECT_STORE_H_
diff --git a/runtime/vm/os.h b/runtime/vm/os.h
index c36c8ed..e381269 100644
--- a/runtime/vm/os.h
+++ b/runtime/vm/os.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OS_H_
-#define VM_OS_H_
+#ifndef RUNTIME_VM_OS_H_
+#define RUNTIME_VM_OS_H_
 
 #include "vm/globals.h"
 
@@ -156,4 +156,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OS_H_
+#endif  // RUNTIME_VM_OS_H_
diff --git a/runtime/vm/os_thread.h b/runtime/vm/os_thread.h
index e950832..00fad7c 100644
--- a/runtime/vm/os_thread.h
+++ b/runtime/vm/os_thread.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OS_THREAD_H_
-#define VM_OS_THREAD_H_
+#ifndef RUNTIME_VM_OS_THREAD_H_
+#define RUNTIME_VM_OS_THREAD_H_
 
 #include "platform/globals.h"
 #include "vm/allocation.h"
@@ -360,4 +360,4 @@
 }  // namespace dart
 
 
-#endif  // VM_OS_THREAD_H_
+#endif  // RUNTIME_VM_OS_THREAD_H_
diff --git a/runtime/vm/os_thread_android.h b/runtime/vm/os_thread_android.h
index c4f3981..0954712 100644
--- a/runtime/vm/os_thread_android.h
+++ b/runtime/vm/os_thread_android.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OS_THREAD_ANDROID_H_
-#define VM_OS_THREAD_ANDROID_H_
+#ifndef RUNTIME_VM_OS_THREAD_ANDROID_H_
+#define RUNTIME_VM_OS_THREAD_ANDROID_H_
 
-#if !defined(VM_OS_THREAD_H_)
+#if !defined(RUNTIME_VM_OS_THREAD_H_)
 #error Do not include os_thread_android.h directly; use os_thread.h instead.
 #endif
 
@@ -77,4 +77,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OS_THREAD_ANDROID_H_
+#endif  // RUNTIME_VM_OS_THREAD_ANDROID_H_
diff --git a/runtime/vm/os_thread_fuchsia.h b/runtime/vm/os_thread_fuchsia.h
index b45207b..b9275f9 100644
--- a/runtime/vm/os_thread_fuchsia.h
+++ b/runtime/vm/os_thread_fuchsia.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OS_THREAD_FUCHSIA_H_
-#define VM_OS_THREAD_FUCHSIA_H_
+#ifndef RUNTIME_VM_OS_THREAD_FUCHSIA_H_
+#define RUNTIME_VM_OS_THREAD_FUCHSIA_H_
 
-#if !defined(VM_OS_THREAD_H_)
+#if !defined(RUNTIME_VM_OS_THREAD_H_)
 #error Do not include os_thread_fuchsia.h directly; use os_thread.h instead.
 #endif
 
@@ -77,4 +77,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OS_THREAD_FUCHSIA_H_
+#endif  // RUNTIME_VM_OS_THREAD_FUCHSIA_H_
diff --git a/runtime/vm/os_thread_linux.h b/runtime/vm/os_thread_linux.h
index 306229b..4ee2473 100644
--- a/runtime/vm/os_thread_linux.h
+++ b/runtime/vm/os_thread_linux.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OS_THREAD_LINUX_H_
-#define VM_OS_THREAD_LINUX_H_
+#ifndef RUNTIME_VM_OS_THREAD_LINUX_H_
+#define RUNTIME_VM_OS_THREAD_LINUX_H_
 
-#if !defined(VM_OS_THREAD_H_)
+#if !defined(RUNTIME_VM_OS_THREAD_H_)
 #error Do not include os_thread_linux.h directly; use os_thread.h instead.
 #endif
 
@@ -77,4 +77,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OS_THREAD_LINUX_H_
+#endif  // RUNTIME_VM_OS_THREAD_LINUX_H_
diff --git a/runtime/vm/os_thread_macos.h b/runtime/vm/os_thread_macos.h
index 4909edf..2a2fcf5 100644
--- a/runtime/vm/os_thread_macos.h
+++ b/runtime/vm/os_thread_macos.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OS_THREAD_MACOS_H_
-#define VM_OS_THREAD_MACOS_H_
+#ifndef RUNTIME_VM_OS_THREAD_MACOS_H_
+#define RUNTIME_VM_OS_THREAD_MACOS_H_
 
-#if !defined(VM_OS_THREAD_H_)
+#if !defined(RUNTIME_VM_OS_THREAD_H_)
 #error Do not include os_thread_macos.h directly; use os_thread.h instead.
 #endif
 
@@ -78,4 +78,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OS_THREAD_MACOS_H_
+#endif  // RUNTIME_VM_OS_THREAD_MACOS_H_
diff --git a/runtime/vm/os_thread_win.h b/runtime/vm/os_thread_win.h
index 913b074..714d175 100644
--- a/runtime/vm/os_thread_win.h
+++ b/runtime/vm/os_thread_win.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_OS_THREAD_WIN_H_
-#define VM_OS_THREAD_WIN_H_
+#ifndef RUNTIME_VM_OS_THREAD_WIN_H_
+#define RUNTIME_VM_OS_THREAD_WIN_H_
 
-#if !defined(VM_OS_THREAD_H_)
+#if !defined(RUNTIME_VM_OS_THREAD_H_)
 #error Do not include os_thread_win.h directly; use os_thread.h instead.
 #endif
 
@@ -173,4 +173,4 @@
 
 }  // namespace dart
 
-#endif  // VM_OS_THREAD_WIN_H_
+#endif  // RUNTIME_VM_OS_THREAD_WIN_H_
diff --git a/runtime/vm/pages.h b/runtime/vm/pages.h
index 06e3ab5..ff7a0e8 100644
--- a/runtime/vm/pages.h
+++ b/runtime/vm/pages.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_PAGES_H_
-#define VM_PAGES_H_
+#ifndef RUNTIME_VM_PAGES_H_
+#define RUNTIME_VM_PAGES_H_
 
 #include "vm/freelist.h"
 #include "vm/globals.h"
@@ -468,4 +468,4 @@
 
 }  // namespace dart
 
-#endif  // VM_PAGES_H_
+#endif  // RUNTIME_VM_PAGES_H_
diff --git a/runtime/vm/parser.cc b/runtime/vm/parser.cc
index 868c27b..a685452 100644
--- a/runtime/vm/parser.cc
+++ b/runtime/vm/parser.cc
@@ -3504,12 +3504,10 @@
     ASSERT(AbstractType::Handle(Z, func.result_type()).IsResolved());
     ASSERT(func.NumParameters() == params.parameters->length());
     if (!Function::Handle(func.parent_function()).IsGetterFunction()) {
-      // Parse and discard any formal parameters. They are accessed as
-      // context variables.
-      ParamList discarded_params;
-      ParseFormalParameterList(allow_explicit_default_values,
-                               false,
-                               &discarded_params);
+      // Skip formal parameters. They are accessed as context variables.
+      // Parsing them again (and discarding them) does not work in case of
+      // default values with same name as already parsed formal parameter.
+      SkipToMatchingParenthesis();
     }
   } else if (func.IsSyncGenClosure()) {
     AddSyncGenClosureParameters(&params);
@@ -3517,12 +3515,10 @@
     AddFormalParamsToScope(&params, current_block_->scope);
     ASSERT(AbstractType::Handle(Z, func.result_type()).IsResolved());
     if (!Function::Handle(func.parent_function()).IsGetterFunction()) {
-      // Parse and discard any formal parameters. They are accessed as
-      // context variables.
-      ParamList discarded_params;
-      ParseFormalParameterList(allow_explicit_default_values,
-                               false,
-                               &discarded_params);
+      // Skip formal parameters. They are accessed as context variables.
+      // Parsing them again (and discarding them) does not work in case of
+      // default values with same name as already parsed formal parameter.
+      SkipToMatchingParenthesis();
     }
   } else if (func.IsAsyncGenClosure()) {
     AddAsyncGenClosureParameters(&params);
@@ -3531,12 +3527,10 @@
     ASSERT(AbstractType::Handle(Z, func.result_type()).IsResolved());
     ASSERT(func.NumParameters() == params.parameters->length());
     if (!Function::Handle(func.parent_function()).IsGetterFunction()) {
-      // Parse and discard any formal parameters. They are accessed as
-      // context variables.
-      ParamList discarded_params;
-      ParseFormalParameterList(allow_explicit_default_values,
-                               false,
-                               &discarded_params);
+      // Skip formal parameters. They are accessed as context variables.
+      // Parsing them again (and discarding them) does not work in case of
+      // default values with same name as already parsed formal parameter.
+      SkipToMatchingParenthesis();
     }
   } else {
     ParseFormalParameterList(allow_explicit_default_values, false, &params);
@@ -9246,7 +9240,7 @@
         new(Z) LocalVariable(loop_var_assignment_pos,
                              loop_var_assignment_pos,
                              *loop_var_name,
-                             loop_var_type);;
+                             loop_var_type);
     if (loop_var_is_final) {
       loop_var->set_is_final();
     }
@@ -9485,7 +9479,7 @@
        new(Z) LocalVariable(loop_var_pos,
                             loop_var_assignment_pos,
                             *loop_var_name,
-                            loop_var_type);;
+                            loop_var_type);
     if (loop_var_is_final) {
       loop_var->set_is_final();
     }
@@ -14702,10 +14696,7 @@
     ExpectIdentifier("function name expected");
   }
   if (CurrentToken() == Token::kLPAREN) {
-    const bool allow_explicit_default_values = true;
-    ParamList params;
-    params.skipped = true;
-    ParseFormalParameterList(allow_explicit_default_values, false, &params);
+    SkipToMatchingParenthesis();
   }
   RawFunction::AsyncModifier async_modifier = ParseFunctionModifier();
   BoolScope allow_await(&this->await_is_keyword_,
diff --git a/runtime/vm/parser.h b/runtime/vm/parser.h
index 0b37e12..b7c7b14 100644
--- a/runtime/vm/parser.h
+++ b/runtime/vm/parser.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_PARSER_H_
-#define VM_PARSER_H_
+#ifndef RUNTIME_VM_PARSER_H_
+#define RUNTIME_VM_PARSER_H_
 
 #include "include/dart_api.h"
 
@@ -995,4 +995,4 @@
 
 }  // namespace dart
 
-#endif  // VM_PARSER_H_
+#endif  // RUNTIME_VM_PARSER_H_
diff --git a/runtime/vm/port.h b/runtime/vm/port.h
index 6e41e3a..113562e 100644
--- a/runtime/vm/port.h
+++ b/runtime/vm/port.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_PORT_H_
-#define VM_PORT_H_
+#ifndef RUNTIME_VM_PORT_H_
+#define RUNTIME_VM_PORT_H_
 
 #include "include/dart_api.h"
 #include "vm/allocation.h"
@@ -102,4 +102,4 @@
 
 }  // namespace dart
 
-#endif  // VM_PORT_H_
+#endif  // RUNTIME_VM_PORT_H_
diff --git a/runtime/vm/precompiler.h b/runtime/vm/precompiler.h
index 90b5f82..e10247c 100644
--- a/runtime/vm/precompiler.h
+++ b/runtime/vm/precompiler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_PRECOMPILER_H_
-#define VM_PRECOMPILER_H_
+#ifndef RUNTIME_VM_PRECOMPILER_H_
+#define RUNTIME_VM_PRECOMPILER_H_
 
 #include "vm/allocation.h"
 #include "vm/hash_map.h"
@@ -501,4 +501,4 @@
 
 }  // namespace dart
 
-#endif  // VM_PRECOMPILER_H_
+#endif  // RUNTIME_VM_PRECOMPILER_H_
diff --git a/runtime/vm/proccpuinfo.h b/runtime/vm/proccpuinfo.h
index 0814c6a..e81d7ee 100644
--- a/runtime/vm/proccpuinfo.h
+++ b/runtime/vm/proccpuinfo.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_PROCCPUINFO_H_
-#define VM_PROCCPUINFO_H_
+#ifndef RUNTIME_VM_PROCCPUINFO_H_
+#define RUNTIME_VM_PROCCPUINFO_H_
 
 #include "vm/globals.h"
 #if defined(TARGET_OS_LINUX) || defined(TARGET_OS_ANDROID)
@@ -31,4 +31,4 @@
 
 #endif  // defined(TARGET_OS_LINUX) || defined(TARGET_OS_ANDROID)
 
-#endif  // VM_PROCCPUINFO_H_
+#endif  // RUNTIME_VM_PROCCPUINFO_H_
diff --git a/runtime/vm/profiler.h b/runtime/vm/profiler.h
index 529a193..4f7ce96 100644
--- a/runtime/vm/profiler.h
+++ b/runtime/vm/profiler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_PROFILER_H_
-#define VM_PROFILER_H_
+#ifndef RUNTIME_VM_PROFILER_H_
+#define RUNTIME_VM_PROFILER_H_
 
 #include "vm/allocation.h"
 #include "vm/bitfield.h"
@@ -684,4 +684,4 @@
 
 }  // namespace dart
 
-#endif  // VM_PROFILER_H_
+#endif  // RUNTIME_VM_PROFILER_H_
diff --git a/runtime/vm/profiler_service.h b/runtime/vm/profiler_service.h
index 0e0e6d3..61c8891 100644
--- a/runtime/vm/profiler_service.h
+++ b/runtime/vm/profiler_service.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_PROFILER_SERVICE_H_
-#define VM_PROFILER_SERVICE_H_
+#ifndef RUNTIME_VM_PROFILER_SERVICE_H_
+#define RUNTIME_VM_PROFILER_SERVICE_H_
 
 #include "vm/allocation.h"
 #include "vm/code_observers.h"
@@ -472,4 +472,4 @@
 
 }  // namespace dart
 
-#endif  // VM_PROFILER_SERVICE_H_
+#endif  // RUNTIME_VM_PROFILER_SERVICE_H_
diff --git a/runtime/vm/random.h b/runtime/vm/random.h
index f5614de..311760f8 100644
--- a/runtime/vm/random.h
+++ b/runtime/vm/random.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_RANDOM_H_
-#define VM_RANDOM_H_
+#ifndef RUNTIME_VM_RANDOM_H_
+#define RUNTIME_VM_RANDOM_H_
 
 #include "vm/globals.h"
 #include "vm/allocation.h"
@@ -34,4 +34,4 @@
 
 }  // namespace dart
 
-#endif  // VM_RANDOM_H_
+#endif  // RUNTIME_VM_RANDOM_H_
diff --git a/runtime/vm/raw_object.h b/runtime/vm/raw_object.h
index dcf3992..cb47575 100644
--- a/runtime/vm/raw_object.h
+++ b/runtime/vm/raw_object.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_RAW_OBJECT_H_
-#define VM_RAW_OBJECT_H_
+#ifndef RUNTIME_VM_RAW_OBJECT_H_
+#define RUNTIME_VM_RAW_OBJECT_H_
 
 #include "platform/assert.h"
 #include "vm/atomic.h"
@@ -2493,4 +2493,4 @@
 
 }  // namespace dart
 
-#endif  // VM_RAW_OBJECT_H_
+#endif  // RUNTIME_VM_RAW_OBJECT_H_
diff --git a/runtime/vm/redundancy_elimination.h b/runtime/vm/redundancy_elimination.h
index 73a9850..8fc6dc4 100644
--- a/runtime/vm/redundancy_elimination.h
+++ b/runtime/vm/redundancy_elimination.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REDUNDANCY_ELIMINATION_H_
-#define VM_REDUNDANCY_ELIMINATION_H_
+#ifndef RUNTIME_VM_REDUNDANCY_ELIMINATION_H_
+#define RUNTIME_VM_REDUNDANCY_ELIMINATION_H_
 
 #include "vm/intermediate_language.h"
 #include "vm/flow_graph.h"
@@ -146,4 +146,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REDUNDANCY_ELIMINATION_H_
+#endif  // RUNTIME_VM_REDUNDANCY_ELIMINATION_H_
diff --git a/runtime/vm/regexp.cc b/runtime/vm/regexp.cc
index 9edfbf6..2b9df95 100644
--- a/runtime/vm/regexp.cc
+++ b/runtime/vm/regexp.cc
@@ -1234,7 +1234,7 @@
       last - first > kSize * 2 &&
       binary_chop_index > *new_start_index &&
       ranges->At(binary_chop_index) >= first + 2 * kSize) {
-    intptr_t scan_forward_for_section_border = binary_chop_index;;
+    intptr_t scan_forward_for_section_border = binary_chop_index;
     intptr_t new_border = (ranges->At(binary_chop_index) | kMask) + 1;
 
     while (scan_forward_for_section_border < end_index) {
diff --git a/runtime/vm/regexp.h b/runtime/vm/regexp.h
index bc8edd5..bf457be 100644
--- a/runtime/vm/regexp.h
+++ b/runtime/vm/regexp.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REGEXP_H_
-#define VM_REGEXP_H_
+#ifndef RUNTIME_VM_REGEXP_H_
+#define RUNTIME_VM_REGEXP_H_
 
 #include "vm/assembler.h"
 #include "vm/intermediate_language.h"
@@ -1435,4 +1435,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_H_
+#endif  // RUNTIME_VM_REGEXP_H_
diff --git a/runtime/vm/regexp_assembler.h b/runtime/vm/regexp_assembler.h
index efd53c5..399ae7f 100644
--- a/runtime/vm/regexp_assembler.h
+++ b/runtime/vm/regexp_assembler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REGEXP_ASSEMBLER_H_
-#define VM_REGEXP_ASSEMBLER_H_
+#ifndef RUNTIME_VM_REGEXP_ASSEMBLER_H_
+#define RUNTIME_VM_REGEXP_ASSEMBLER_H_
 
 #include "vm/assembler.h"
 #include "vm/intermediate_language.h"
@@ -241,4 +241,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_ASSEMBLER_H_
+#endif  // RUNTIME_VM_REGEXP_ASSEMBLER_H_
diff --git a/runtime/vm/regexp_assembler_bytecode.h b/runtime/vm/regexp_assembler_bytecode.h
index da2a6d7..eec47a4 100644
--- a/runtime/vm/regexp_assembler_bytecode.h
+++ b/runtime/vm/regexp_assembler_bytecode.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REGEXP_ASSEMBLER_BYTECODE_H_
-#define VM_REGEXP_ASSEMBLER_BYTECODE_H_
+#ifndef RUNTIME_VM_REGEXP_ASSEMBLER_BYTECODE_H_
+#define RUNTIME_VM_REGEXP_ASSEMBLER_BYTECODE_H_
 
 #include "vm/object.h"
 #include "vm/regexp_assembler.h"
@@ -141,4 +141,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_ASSEMBLER_BYTECODE_H_
+#endif  // RUNTIME_VM_REGEXP_ASSEMBLER_BYTECODE_H_
diff --git a/runtime/vm/regexp_assembler_bytecode_inl.h b/runtime/vm/regexp_assembler_bytecode_inl.h
index 2b370db..d3855c7 100644
--- a/runtime/vm/regexp_assembler_bytecode_inl.h
+++ b/runtime/vm/regexp_assembler_bytecode_inl.h
@@ -6,8 +6,8 @@
 
 #include "vm/regexp_bytecodes.h"
 
-#ifndef VM_REGEXP_ASSEMBLER_BYTECODE_INL_H_
-#define VM_REGEXP_ASSEMBLER_BYTECODE_INL_H_
+#ifndef RUNTIME_VM_REGEXP_ASSEMBLER_BYTECODE_INL_H_
+#define RUNTIME_VM_REGEXP_ASSEMBLER_BYTECODE_INL_H_
 
 namespace dart {
 
@@ -54,4 +54,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_ASSEMBLER_BYTECODE_INL_H_
+#endif  // RUNTIME_VM_REGEXP_ASSEMBLER_BYTECODE_INL_H_
diff --git a/runtime/vm/regexp_assembler_ir.h b/runtime/vm/regexp_assembler_ir.h
index f898346..8aae558 100644
--- a/runtime/vm/regexp_assembler_ir.h
+++ b/runtime/vm/regexp_assembler_ir.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REGEXP_ASSEMBLER_IR_H_
-#define VM_REGEXP_ASSEMBLER_IR_H_
+#ifndef RUNTIME_VM_REGEXP_ASSEMBLER_IR_H_
+#define RUNTIME_VM_REGEXP_ASSEMBLER_IR_H_
 
 #include "vm/assembler.h"
 #include "vm/intermediate_language.h"
@@ -432,4 +432,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_ASSEMBLER_IR_H_
+#endif  // RUNTIME_VM_REGEXP_ASSEMBLER_IR_H_
diff --git a/runtime/vm/regexp_ast.h b/runtime/vm/regexp_ast.h
index 2be61ec..1eca49b 100644
--- a/runtime/vm/regexp_ast.h
+++ b/runtime/vm/regexp_ast.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REGEXP_AST_H_
-#define VM_REGEXP_AST_H_
+#ifndef RUNTIME_VM_REGEXP_AST_H_
+#define RUNTIME_VM_REGEXP_AST_H_
 
 #include "platform/globals.h"
 #include "platform/utils.h"
@@ -389,4 +389,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_AST_H_
+#endif  // RUNTIME_VM_REGEXP_AST_H_
diff --git a/runtime/vm/regexp_bytecodes.h b/runtime/vm/regexp_bytecodes.h
index 8d1cddb..67d26dc 100644
--- a/runtime/vm/regexp_bytecodes.h
+++ b/runtime/vm/regexp_bytecodes.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REGEXP_BYTECODES_H_
-#define VM_REGEXP_BYTECODES_H_
+#ifndef RUNTIME_VM_REGEXP_BYTECODES_H_
+#define RUNTIME_VM_REGEXP_BYTECODES_H_
 
 namespace dart {
 
@@ -76,4 +76,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_BYTECODES_H_
+#endif  // RUNTIME_VM_REGEXP_BYTECODES_H_
diff --git a/runtime/vm/regexp_interpreter.h b/runtime/vm/regexp_interpreter.h
index eab89cb..e6b1898 100644
--- a/runtime/vm/regexp_interpreter.h
+++ b/runtime/vm/regexp_interpreter.h
@@ -4,8 +4,8 @@
 
 // A simple interpreter for the Irregexp byte code.
 
-#ifndef VM_REGEXP_INTERPRETER_H_
-#define VM_REGEXP_INTERPRETER_H_
+#ifndef RUNTIME_VM_REGEXP_INTERPRETER_H_
+#define RUNTIME_VM_REGEXP_INTERPRETER_H_
 
 #include "vm/allocation.h"
 #include "vm/object.h"
@@ -30,4 +30,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_INTERPRETER_H_
+#endif  // RUNTIME_VM_REGEXP_INTERPRETER_H_
diff --git a/runtime/vm/regexp_parser.h b/runtime/vm/regexp_parser.h
index aed1423..5108e93 100644
--- a/runtime/vm/regexp_parser.h
+++ b/runtime/vm/regexp_parser.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REGEXP_PARSER_H_
-#define VM_REGEXP_PARSER_H_
+#ifndef RUNTIME_VM_REGEXP_PARSER_H_
+#define RUNTIME_VM_REGEXP_PARSER_H_
 
 #include "vm/allocation.h"
 #include "vm/growable_array.h"
@@ -173,4 +173,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REGEXP_PARSER_H_
+#endif  // RUNTIME_VM_REGEXP_PARSER_H_
diff --git a/runtime/vm/report.h b/runtime/vm/report.h
index f95cb84..e2efa54 100644
--- a/runtime/vm/report.h
+++ b/runtime/vm/report.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REPORT_H_
-#define VM_REPORT_H_
+#ifndef RUNTIME_VM_REPORT_H_
+#define RUNTIME_VM_REPORT_H_
 
 #include "vm/allocation.h"
 #include "vm/token_position.h"
@@ -68,5 +68,5 @@
 
 }  // namespace dart
 
-#endif  // VM_REPORT_H_
+#endif  // RUNTIME_VM_REPORT_H_
 
diff --git a/runtime/vm/resolver.h b/runtime/vm/resolver.h
index 9a52ad3..620bb52 100644
--- a/runtime/vm/resolver.h
+++ b/runtime/vm/resolver.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_RESOLVER_H_
-#define VM_RESOLVER_H_
+#ifndef RUNTIME_VM_RESOLVER_H_
+#define RUNTIME_VM_RESOLVER_H_
 
 #include "vm/allocation.h"
 
@@ -71,4 +71,4 @@
 
 }  // namespace dart
 
-#endif  // VM_RESOLVER_H_
+#endif  // RUNTIME_VM_RESOLVER_H_
diff --git a/runtime/vm/reusable_handles.h b/runtime/vm/reusable_handles.h
index 25e5154..83855d6 100644
--- a/runtime/vm/reusable_handles.h
+++ b/runtime/vm/reusable_handles.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_REUSABLE_HANDLES_H_
-#define VM_REUSABLE_HANDLES_H_
+#ifndef RUNTIME_VM_REUSABLE_HANDLES_H_
+#define RUNTIME_VM_REUSABLE_HANDLES_H_
 
 #include "vm/allocation.h"
 #include "vm/handles.h"
@@ -121,4 +121,4 @@
 
 }  // namespace dart
 
-#endif  // VM_REUSABLE_HANDLES_H_
+#endif  // RUNTIME_VM_REUSABLE_HANDLES_H_
diff --git a/runtime/vm/ring_buffer.h b/runtime/vm/ring_buffer.h
index e015930..77f6314 100644
--- a/runtime/vm/ring_buffer.h
+++ b/runtime/vm/ring_buffer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_RING_BUFFER_H_
-#define VM_RING_BUFFER_H_
+#ifndef RUNTIME_VM_RING_BUFFER_H_
+#define RUNTIME_VM_RING_BUFFER_H_
 
 #include "platform/assert.h"
 #include "platform/utils.h"
@@ -40,4 +40,4 @@
 
 }  // namespace dart
 
-#endif  // VM_RING_BUFFER_H_
+#endif  // RUNTIME_VM_RING_BUFFER_H_
diff --git a/runtime/vm/runtime_entry.h b/runtime/vm/runtime_entry.h
index c52b6b5..93f4048 100644
--- a/runtime/vm/runtime_entry.h
+++ b/runtime/vm/runtime_entry.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_RUNTIME_ENTRY_H_
-#define VM_RUNTIME_ENTRY_H_
+#ifndef RUNTIME_VM_RUNTIME_ENTRY_H_
+#define RUNTIME_VM_RUNTIME_ENTRY_H_
 
 #include "vm/allocation.h"
 #include "vm/flags.h"
@@ -186,4 +186,4 @@
 
 }  // namespace dart
 
-#endif  // VM_RUNTIME_ENTRY_H_
+#endif  // RUNTIME_VM_RUNTIME_ENTRY_H_
diff --git a/runtime/vm/runtime_entry_list.h b/runtime/vm/runtime_entry_list.h
index 9564146..835cf3c 100644
--- a/runtime/vm/runtime_entry_list.h
+++ b/runtime/vm/runtime_entry_list.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_RUNTIME_ENTRY_LIST_H_
-#define VM_RUNTIME_ENTRY_LIST_H_
+#ifndef RUNTIME_VM_RUNTIME_ENTRY_LIST_H_
+#define RUNTIME_VM_RUNTIME_ENTRY_LIST_H_
 
 namespace dart {
 
@@ -72,4 +72,4 @@
 
 }  // namespace dart
 
-#endif  // VM_RUNTIME_ENTRY_LIST_H_
+#endif  // RUNTIME_VM_RUNTIME_ENTRY_LIST_H_
diff --git a/runtime/vm/safepoint.h b/runtime/vm/safepoint.h
index 15c2c98..8a48f29 100644
--- a/runtime/vm/safepoint.h
+++ b/runtime/vm/safepoint.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SAFEPOINT_H_
-#define VM_SAFEPOINT_H_
+#ifndef RUNTIME_VM_SAFEPOINT_H_
+#define RUNTIME_VM_SAFEPOINT_H_
 
 #include "vm/globals.h"
 #include "vm/lockers.h"
@@ -384,4 +384,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SAFEPOINT_H_
+#endif  // RUNTIME_VM_SAFEPOINT_H_
diff --git a/runtime/vm/scanner.h b/runtime/vm/scanner.h
index 30bc81e..aff5b3a 100644
--- a/runtime/vm/scanner.h
+++ b/runtime/vm/scanner.h
@@ -6,8 +6,8 @@
 // and produces a stream of tokens which is used by the parser.
 //
 
-#ifndef VM_SCANNER_H_
-#define VM_SCANNER_H_
+#ifndef RUNTIME_VM_SCANNER_H_
+#define RUNTIME_VM_SCANNER_H_
 
 #include "vm/growable_array.h"
 #include "vm/token.h"
@@ -218,4 +218,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SCANNER_H_
+#endif  // RUNTIME_VM_SCANNER_H_
diff --git a/runtime/vm/scavenger.h b/runtime/vm/scavenger.h
index 798470c..caa2daf 100644
--- a/runtime/vm/scavenger.h
+++ b/runtime/vm/scavenger.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SCAVENGER_H_
-#define VM_SCAVENGER_H_
+#ifndef RUNTIME_VM_SCAVENGER_H_
+#define RUNTIME_VM_SCAVENGER_H_
 
 #include "platform/assert.h"
 #include "platform/utils.h"
@@ -312,4 +312,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SCAVENGER_H_
+#endif  // RUNTIME_VM_SCAVENGER_H_
diff --git a/runtime/vm/scope_timer.h b/runtime/vm/scope_timer.h
index c60e67f..f45854e 100644
--- a/runtime/vm/scope_timer.h
+++ b/runtime/vm/scope_timer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SCOPE_TIMER_H_
-#define VM_SCOPE_TIMER_H_
+#ifndef RUNTIME_VM_SCOPE_TIMER_H_
+#define RUNTIME_VM_SCOPE_TIMER_H_
 
 #include "platform/globals.h"
 
@@ -45,4 +45,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SCOPE_TIMER_H_
+#endif  // RUNTIME_VM_SCOPE_TIMER_H_
diff --git a/runtime/vm/scopes.h b/runtime/vm/scopes.h
index c3b7611..69551d0 100644
--- a/runtime/vm/scopes.h
+++ b/runtime/vm/scopes.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SCOPES_H_
-#define VM_SCOPES_H_
+#ifndef RUNTIME_VM_SCOPES_H_
+#define RUNTIME_VM_SCOPES_H_
 
 #include "platform/assert.h"
 #include "platform/globals.h"
@@ -397,4 +397,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SCOPES_H_
+#endif  // RUNTIME_VM_SCOPES_H_
diff --git a/runtime/vm/service.h b/runtime/vm/service.h
index 935f176..657fe76 100644
--- a/runtime/vm/service.h
+++ b/runtime/vm/service.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SERVICE_H_
-#define VM_SERVICE_H_
+#ifndef RUNTIME_VM_SERVICE_H_
+#define RUNTIME_VM_SERVICE_H_
 
 #include "include/dart_tools_api.h"
 
@@ -218,4 +218,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SERVICE_H_
+#endif  // RUNTIME_VM_SERVICE_H_
diff --git a/runtime/vm/service_event.h b/runtime/vm/service_event.h
index 369f522..ff90328 100644
--- a/runtime/vm/service_event.h
+++ b/runtime/vm/service_event.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SERVICE_EVENT_H_
-#define VM_SERVICE_EVENT_H_
+#ifndef RUNTIME_VM_SERVICE_EVENT_H_
+#define RUNTIME_VM_SERVICE_EVENT_H_
 
 #include "vm/globals.h"
 #include "vm/heap.h"
@@ -268,4 +268,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SERVICE_EVENT_H_
+#endif  // RUNTIME_VM_SERVICE_EVENT_H_
diff --git a/runtime/vm/service_isolate.h b/runtime/vm/service_isolate.h
index 9def85c..c79d88b 100644
--- a/runtime/vm/service_isolate.h
+++ b/runtime/vm/service_isolate.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SERVICE_ISOLATE_H_
-#define VM_SERVICE_ISOLATE_H_
+#ifndef RUNTIME_VM_SERVICE_ISOLATE_H_
+#define RUNTIME_VM_SERVICE_ISOLATE_H_
 
 #include "include/dart_api.h"
 
@@ -79,4 +79,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SERVICE_ISOLATE_H_
+#endif  // RUNTIME_VM_SERVICE_ISOLATE_H_
diff --git a/runtime/vm/signal_handler.h b/runtime/vm/signal_handler.h
index 615e584..654087d 100644
--- a/runtime/vm/signal_handler.h
+++ b/runtime/vm/signal_handler.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SIGNAL_HANDLER_H_
-#define VM_SIGNAL_HANDLER_H_
+#ifndef RUNTIME_VM_SIGNAL_HANDLER_H_
+#define RUNTIME_VM_SIGNAL_HANDLER_H_
 
 #include "vm/allocation.h"
 #include "vm/globals.h"
@@ -122,4 +122,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SIGNAL_HANDLER_H_
+#endif  // RUNTIME_VM_SIGNAL_HANDLER_H_
diff --git a/runtime/vm/simulator.h b/runtime/vm/simulator.h
index b73bd97..6dbdbc6 100644
--- a/runtime/vm/simulator.h
+++ b/runtime/vm/simulator.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SIMULATOR_H_
-#define VM_SIMULATOR_H_
+#ifndef RUNTIME_VM_SIMULATOR_H_
+#define RUNTIME_VM_SIMULATOR_H_
 
 #include "vm/globals.h"
 
@@ -24,4 +24,4 @@
 #endif  // defined(TARGET_ARCH_...)
 #endif  // defined(USING_SIMULATOR)
 
-#endif  // VM_SIMULATOR_H_
+#endif  // RUNTIME_VM_SIMULATOR_H_
diff --git a/runtime/vm/simulator_arm.h b/runtime/vm/simulator_arm.h
index c163a62..2a505cc 100644
--- a/runtime/vm/simulator_arm.h
+++ b/runtime/vm/simulator_arm.h
@@ -9,10 +9,10 @@
 // which will start execution in the Simulator or forwards to the real entry
 // on a ARM HW platform.
 
-#ifndef VM_SIMULATOR_ARM_H_
-#define VM_SIMULATOR_ARM_H_
+#ifndef RUNTIME_VM_SIMULATOR_ARM_H_
+#define RUNTIME_VM_SIMULATOR_ARM_H_
 
-#ifndef VM_SIMULATOR_H_
+#ifndef RUNTIME_VM_SIMULATOR_H_
 #error Do not include simulator_arm.h directly; use simulator.h.
 #endif
 
@@ -287,4 +287,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SIMULATOR_ARM_H_
+#endif  // RUNTIME_VM_SIMULATOR_ARM_H_
diff --git a/runtime/vm/simulator_arm64.h b/runtime/vm/simulator_arm64.h
index de49dd9..406976a 100644
--- a/runtime/vm/simulator_arm64.h
+++ b/runtime/vm/simulator_arm64.h
@@ -9,10 +9,10 @@
 // which will start execution in the Simulator or forwards to the real entry
 // on a ARM64 HW platform.
 
-#ifndef VM_SIMULATOR_ARM64_H_
-#define VM_SIMULATOR_ARM64_H_
+#ifndef RUNTIME_VM_SIMULATOR_ARM64_H_
+#define RUNTIME_VM_SIMULATOR_ARM64_H_
 
-#ifndef VM_SIMULATOR_H_
+#ifndef RUNTIME_VM_SIMULATOR_H_
 #error Do not include simulator_arm64.h directly; use simulator.h.
 #endif
 
@@ -282,4 +282,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SIMULATOR_ARM64_H_
+#endif  // RUNTIME_VM_SIMULATOR_ARM64_H_
diff --git a/runtime/vm/simulator_dbc.h b/runtime/vm/simulator_dbc.h
index bb875bb..4e2f649 100644
--- a/runtime/vm/simulator_dbc.h
+++ b/runtime/vm/simulator_dbc.h
@@ -2,10 +2,10 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SIMULATOR_DBC_H_
-#define VM_SIMULATOR_DBC_H_
+#ifndef RUNTIME_VM_SIMULATOR_DBC_H_
+#define RUNTIME_VM_SIMULATOR_DBC_H_
 
-#ifndef VM_SIMULATOR_H_
+#ifndef RUNTIME_VM_SIMULATOR_H_
 #error Do not include simulator_dbc.h directly; use simulator.h.
 #endif
 
@@ -172,4 +172,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SIMULATOR_DBC_H_
+#endif  // RUNTIME_VM_SIMULATOR_DBC_H_
diff --git a/runtime/vm/simulator_mips.h b/runtime/vm/simulator_mips.h
index cbda735..89b7273 100644
--- a/runtime/vm/simulator_mips.h
+++ b/runtime/vm/simulator_mips.h
@@ -9,10 +9,10 @@
 // which will start execution in the Simulator or forwards to the real entry
 // on a MIPS HW platform.
 
-#ifndef VM_SIMULATOR_MIPS_H_
-#define VM_SIMULATOR_MIPS_H_
+#ifndef RUNTIME_VM_SIMULATOR_MIPS_H_
+#define RUNTIME_VM_SIMULATOR_MIPS_H_
 
-#ifndef VM_SIMULATOR_H_
+#ifndef RUNTIME_VM_SIMULATOR_H_
 #error Do not include simulator_mips.h directly; use simulator.h.
 #endif
 
@@ -267,4 +267,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SIMULATOR_MIPS_H_
+#endif  // RUNTIME_VM_SIMULATOR_MIPS_H_
diff --git a/runtime/vm/snapshot.h b/runtime/vm/snapshot.h
index 020f4485..924f61c 100644
--- a/runtime/vm/snapshot.h
+++ b/runtime/vm/snapshot.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SNAPSHOT_H_
-#define VM_SNAPSHOT_H_
+#ifndef RUNTIME_VM_SNAPSHOT_H_
+#define RUNTIME_VM_SNAPSHOT_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -1049,4 +1049,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SNAPSHOT_H_
+#endif  // RUNTIME_VM_SNAPSHOT_H_
diff --git a/runtime/vm/snapshot_ids.h b/runtime/vm/snapshot_ids.h
index 436b2a8..26ad769 100644
--- a/runtime/vm/snapshot_ids.h
+++ b/runtime/vm/snapshot_ids.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SNAPSHOT_IDS_H_
-#define VM_SNAPSHOT_IDS_H_
+#ifndef RUNTIME_VM_SNAPSHOT_IDS_H_
+#define RUNTIME_VM_SNAPSHOT_IDS_H_
 
 #include "vm/raw_object.h"
 #include "vm/dart_entry.h"
@@ -66,4 +66,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SNAPSHOT_IDS_H_
+#endif  // RUNTIME_VM_SNAPSHOT_IDS_H_
diff --git a/runtime/vm/source_report.h b/runtime/vm/source_report.h
index dec18cfa..05870f2 100644
--- a/runtime/vm/source_report.h
+++ b/runtime/vm/source_report.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SOURCE_REPORT_H_
-#define VM_SOURCE_REPORT_H_
+#ifndef RUNTIME_VM_SOURCE_REPORT_H_
+#define RUNTIME_VM_SOURCE_REPORT_H_
 
 #include "vm/allocation.h"
 #include "vm/flags.h"
@@ -126,4 +126,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SOURCE_REPORT_H_
+#endif  // RUNTIME_VM_SOURCE_REPORT_H_
diff --git a/runtime/vm/spaces.h b/runtime/vm/spaces.h
index 8d149b4..4b94b481 100644
--- a/runtime/vm/spaces.h
+++ b/runtime/vm/spaces.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SPACES_H_
-#define VM_SPACES_H_
+#ifndef RUNTIME_VM_SPACES_H_
+#define RUNTIME_VM_SPACES_H_
 
 // This file contains utilities shared by old and new space.
 // TODO(koda): Create Space base class with Space::CurrentUsage().
@@ -23,4 +23,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SPACES_H_
+#endif  // RUNTIME_VM_SPACES_H_
diff --git a/runtime/vm/stack_frame.h b/runtime/vm/stack_frame.h
index 3198872..5076939 100644
--- a/runtime/vm/stack_frame.h
+++ b/runtime/vm/stack_frame.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STACK_FRAME_H_
-#define VM_STACK_FRAME_H_
+#ifndef RUNTIME_VM_STACK_FRAME_H_
+#define RUNTIME_VM_STACK_FRAME_H_
 
 #include "vm/allocation.h"
 #include "vm/object.h"
@@ -407,4 +407,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STACK_FRAME_H_
+#endif  // RUNTIME_VM_STACK_FRAME_H_
diff --git a/runtime/vm/stack_frame_arm.h b/runtime/vm/stack_frame_arm.h
index a966a29..a0d1bba 100644
--- a/runtime/vm/stack_frame_arm.h
+++ b/runtime/vm/stack_frame_arm.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STACK_FRAME_ARM_H_
-#define VM_STACK_FRAME_ARM_H_
+#ifndef RUNTIME_VM_STACK_FRAME_ARM_H_
+#define RUNTIME_VM_STACK_FRAME_ARM_H_
 
 namespace dart {
 
@@ -57,4 +57,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STACK_FRAME_ARM_H_
+#endif  // RUNTIME_VM_STACK_FRAME_ARM_H_
diff --git a/runtime/vm/stack_frame_arm64.h b/runtime/vm/stack_frame_arm64.h
index a1ca2eb..7b1982d 100644
--- a/runtime/vm/stack_frame_arm64.h
+++ b/runtime/vm/stack_frame_arm64.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STACK_FRAME_ARM64_H_
-#define VM_STACK_FRAME_ARM64_H_
+#ifndef RUNTIME_VM_STACK_FRAME_ARM64_H_
+#define RUNTIME_VM_STACK_FRAME_ARM64_H_
 
 namespace dart {
 
@@ -50,4 +50,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STACK_FRAME_ARM64_H_
+#endif  // RUNTIME_VM_STACK_FRAME_ARM64_H_
diff --git a/runtime/vm/stack_frame_dbc.h b/runtime/vm/stack_frame_dbc.h
index 5d5ee78..f355fa9 100644
--- a/runtime/vm/stack_frame_dbc.h
+++ b/runtime/vm/stack_frame_dbc.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STACK_FRAME_DBC_H_
-#define VM_STACK_FRAME_DBC_H_
+#ifndef RUNTIME_VM_STACK_FRAME_DBC_H_
+#define RUNTIME_VM_STACK_FRAME_DBC_H_
 
 namespace dart {
 
@@ -84,4 +84,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STACK_FRAME_DBC_H_
+#endif  // RUNTIME_VM_STACK_FRAME_DBC_H_
diff --git a/runtime/vm/stack_frame_ia32.h b/runtime/vm/stack_frame_ia32.h
index a331aef..b7eb7d9 100644
--- a/runtime/vm/stack_frame_ia32.h
+++ b/runtime/vm/stack_frame_ia32.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STACK_FRAME_IA32_H_
-#define VM_STACK_FRAME_IA32_H_
+#ifndef RUNTIME_VM_STACK_FRAME_IA32_H_
+#define RUNTIME_VM_STACK_FRAME_IA32_H_
 
 namespace dart {
 
@@ -46,4 +46,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STACK_FRAME_IA32_H_
+#endif  // RUNTIME_VM_STACK_FRAME_IA32_H_
diff --git a/runtime/vm/stack_frame_mips.h b/runtime/vm/stack_frame_mips.h
index 35c9aba..7290b8b 100644
--- a/runtime/vm/stack_frame_mips.h
+++ b/runtime/vm/stack_frame_mips.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STACK_FRAME_MIPS_H_
-#define VM_STACK_FRAME_MIPS_H_
+#ifndef RUNTIME_VM_STACK_FRAME_MIPS_H_
+#define RUNTIME_VM_STACK_FRAME_MIPS_H_
 
 namespace dart {
 
@@ -47,4 +47,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STACK_FRAME_MIPS_H_
+#endif  // RUNTIME_VM_STACK_FRAME_MIPS_H_
diff --git a/runtime/vm/stack_frame_x64.h b/runtime/vm/stack_frame_x64.h
index 8fc20a4..1ff4ba0 100644
--- a/runtime/vm/stack_frame_x64.h
+++ b/runtime/vm/stack_frame_x64.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STACK_FRAME_X64_H_
-#define VM_STACK_FRAME_X64_H_
+#ifndef RUNTIME_VM_STACK_FRAME_X64_H_
+#define RUNTIME_VM_STACK_FRAME_X64_H_
 
 namespace dart {
 
@@ -53,4 +53,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STACK_FRAME_X64_H_
+#endif  // RUNTIME_VM_STACK_FRAME_X64_H_
diff --git a/runtime/vm/store_buffer.h b/runtime/vm/store_buffer.h
index 2fce2d6..46b0110 100644
--- a/runtime/vm/store_buffer.h
+++ b/runtime/vm/store_buffer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STORE_BUFFER_H_
-#define VM_STORE_BUFFER_H_
+#ifndef RUNTIME_VM_STORE_BUFFER_H_
+#define RUNTIME_VM_STORE_BUFFER_H_
 
 #include "platform/assert.h"
 #include "vm/globals.h"
@@ -175,4 +175,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STORE_BUFFER_H_
+#endif  // RUNTIME_VM_STORE_BUFFER_H_
diff --git a/runtime/vm/stub_code.h b/runtime/vm/stub_code.h
index bda3ba0..7b51f9f 100644
--- a/runtime/vm/stub_code.h
+++ b/runtime/vm/stub_code.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_STUB_CODE_H_
-#define VM_STUB_CODE_H_
+#ifndef RUNTIME_VM_STUB_CODE_H_
+#define RUNTIME_VM_STUB_CODE_H_
 
 #include "vm/allocation.h"
 #include "vm/assembler.h"
@@ -203,4 +203,4 @@
 
 }  // namespace dart
 
-#endif  // VM_STUB_CODE_H_
+#endif  // RUNTIME_VM_STUB_CODE_H_
diff --git a/runtime/vm/symbols.h b/runtime/vm/symbols.h
index 29cdb8a..c419851 100644
--- a/runtime/vm/symbols.h
+++ b/runtime/vm/symbols.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_SYMBOLS_H_
-#define VM_SYMBOLS_H_
+#ifndef RUNTIME_VM_SYMBOLS_H_
+#define RUNTIME_VM_SYMBOLS_H_
 
 #include "vm/growable_array.h"
 #include "vm/object.h"
@@ -695,4 +695,4 @@
 
 }  // namespace dart
 
-#endif  // VM_SYMBOLS_H_
+#endif  // RUNTIME_VM_SYMBOLS_H_
diff --git a/runtime/vm/tags.h b/runtime/vm/tags.h
index 8c6ef65..c6a0230c 100644
--- a/runtime/vm/tags.h
+++ b/runtime/vm/tags.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_TAGS_H_
-#define VM_TAGS_H_
+#ifndef RUNTIME_VM_TAGS_H_
+#define RUNTIME_VM_TAGS_H_
 
 #include "vm/allocation.h"
 
@@ -123,4 +123,4 @@
 
 }  // namespace dart
 
-#endif  // VM_TAGS_H_
+#endif  // RUNTIME_VM_TAGS_H_
diff --git a/runtime/vm/thread.h b/runtime/vm/thread.h
index 093e82a..c06bd4f 100644
--- a/runtime/vm/thread.h
+++ b/runtime/vm/thread.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_THREAD_H_
-#define VM_THREAD_H_
+#ifndef RUNTIME_VM_THREAD_H_
+#define RUNTIME_VM_THREAD_H_
 
 #include "include/dart_api.h"
 #include "platform/assert.h"
@@ -792,4 +792,4 @@
 
 }  // namespace dart
 
-#endif  // VM_THREAD_H_
+#endif  // RUNTIME_VM_THREAD_H_
diff --git a/runtime/vm/thread_barrier.h b/runtime/vm/thread_barrier.h
index 39c56a8..458f28d 100644
--- a/runtime/vm/thread_barrier.h
+++ b/runtime/vm/thread_barrier.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_THREAD_BARRIER_H_
-#define VM_THREAD_BARRIER_H_
+#ifndef RUNTIME_VM_THREAD_BARRIER_H_
+#define RUNTIME_VM_THREAD_BARRIER_H_
 
 #include "vm/globals.h"
 #include "vm/os_thread.h"
@@ -117,4 +117,4 @@
 
 }  // namespace dart
 
-#endif  // VM_THREAD_BARRIER_H_
+#endif  // RUNTIME_VM_THREAD_BARRIER_H_
diff --git a/runtime/vm/thread_interrupter.h b/runtime/vm/thread_interrupter.h
index 82e0474..c425c39 100644
--- a/runtime/vm/thread_interrupter.h
+++ b/runtime/vm/thread_interrupter.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_THREAD_INTERRUPTER_H_
-#define VM_THREAD_INTERRUPTER_H_
+#ifndef RUNTIME_VM_THREAD_INTERRUPTER_H_
+#define RUNTIME_VM_THREAD_INTERRUPTER_H_
 
 #include "vm/allocation.h"
 #include "vm/signal_handler.h"
@@ -63,4 +63,4 @@
 
 }  // namespace dart
 
-#endif  // VM_THREAD_INTERRUPTER_H_
+#endif  // RUNTIME_VM_THREAD_INTERRUPTER_H_
diff --git a/runtime/vm/thread_pool.h b/runtime/vm/thread_pool.h
index 8cd29a2..d9a4634 100644
--- a/runtime/vm/thread_pool.h
+++ b/runtime/vm/thread_pool.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_THREAD_POOL_H_
-#define VM_THREAD_POOL_H_
+#ifndef RUNTIME_VM_THREAD_POOL_H_
+#define RUNTIME_VM_THREAD_POOL_H_
 
 #include "vm/allocation.h"
 #include "vm/globals.h"
@@ -147,4 +147,4 @@
 
 }  // namespace dart
 
-#endif  // VM_THREAD_POOL_H_
+#endif  // RUNTIME_VM_THREAD_POOL_H_
diff --git a/runtime/vm/thread_registry.h b/runtime/vm/thread_registry.h
index dd2c6df..4965e75 100644
--- a/runtime/vm/thread_registry.h
+++ b/runtime/vm/thread_registry.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_THREAD_REGISTRY_H_
-#define VM_THREAD_REGISTRY_H_
+#ifndef RUNTIME_VM_THREAD_REGISTRY_H_
+#define RUNTIME_VM_THREAD_REGISTRY_H_
 
 #include "vm/globals.h"
 #include "vm/growable_array.h"
@@ -67,4 +67,4 @@
 
 }  // namespace dart
 
-#endif  // VM_THREAD_REGISTRY_H_
+#endif  // RUNTIME_VM_THREAD_REGISTRY_H_
diff --git a/runtime/vm/timeline.h b/runtime/vm/timeline.h
index 851113f..64d11a0 100644
--- a/runtime/vm/timeline.h
+++ b/runtime/vm/timeline.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_TIMELINE_H_
-#define VM_TIMELINE_H_
+#ifndef RUNTIME_VM_TIMELINE_H_
+#define RUNTIME_VM_TIMELINE_H_
 
 #include "include/dart_tools_api.h"
 
@@ -914,4 +914,4 @@
 
 }  // namespace dart
 
-#endif  // VM_TIMELINE_H_
+#endif  // RUNTIME_VM_TIMELINE_H_
diff --git a/runtime/vm/timeline_analysis.h b/runtime/vm/timeline_analysis.h
index 4f733a6..2e457c9 100644
--- a/runtime/vm/timeline_analysis.h
+++ b/runtime/vm/timeline_analysis.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_TIMELINE_ANALYSIS_H_
-#define VM_TIMELINE_ANALYSIS_H_
+#ifndef RUNTIME_VM_TIMELINE_ANALYSIS_H_
+#define RUNTIME_VM_TIMELINE_ANALYSIS_H_
 
 #include "vm/growable_array.h"
 #include "vm/timeline.h"
@@ -236,4 +236,4 @@
 
 }  // namespace dart
 
-#endif  // VM_TIMELINE_ANALYSIS_H_
+#endif  // RUNTIME_VM_TIMELINE_ANALYSIS_H_
diff --git a/runtime/vm/timer.h b/runtime/vm/timer.h
index 01a6b6f..7d32522 100644
--- a/runtime/vm/timer.h
+++ b/runtime/vm/timer.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_TIMER_H_
-#define VM_TIMER_H_
+#ifndef RUNTIME_VM_TIMER_H_
+#define RUNTIME_VM_TIMER_H_
 
 #include "platform/utils.h"
 #include "vm/allocation.h"
@@ -177,4 +177,4 @@
 
 }  // namespace dart
 
-#endif  // VM_TIMER_H_
+#endif  // RUNTIME_VM_TIMER_H_
diff --git a/runtime/vm/token.h b/runtime/vm/token.h
index 6ddf17b..0f5ff54 100644
--- a/runtime/vm/token.h
+++ b/runtime/vm/token.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_TOKEN_H_
-#define VM_TOKEN_H_
+#ifndef RUNTIME_VM_TOKEN_H_
+#define RUNTIME_VM_TOKEN_H_
 
 #include "platform/assert.h"
 #include "vm/allocation.h"
@@ -330,4 +330,4 @@
 
 }  // namespace dart
 
-#endif  // VM_TOKEN_H_
+#endif  // RUNTIME_VM_TOKEN_H_
diff --git a/runtime/vm/token_position.h b/runtime/vm/token_position.h
index c964716..dc7c5a0e 100644
--- a/runtime/vm/token_position.h
+++ b/runtime/vm/token_position.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_TOKEN_POSITION_H_
-#define VM_TOKEN_POSITION_H_
+#ifndef RUNTIME_VM_TOKEN_POSITION_H_
+#define RUNTIME_VM_TOKEN_POSITION_H_
 
 #include "platform/utils.h"
 #include "vm/allocation.h"
@@ -205,4 +205,4 @@
 
 }  // namespace dart
 
-#endif  // VM_TOKEN_POSITION_H_
+#endif  // RUNTIME_VM_TOKEN_POSITION_H_
diff --git a/runtime/vm/type_table.h b/runtime/vm/type_table.h
index c33a124..6e3818c 100644
--- a/runtime/vm/type_table.h
+++ b/runtime/vm/type_table.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_TYPE_TABLE_H_
-#define VM_TYPE_TABLE_H_
+#ifndef RUNTIME_VM_TYPE_TABLE_H_
+#define RUNTIME_VM_TYPE_TABLE_H_
 
 #include "platform/assert.h"
 #include "vm/hash_table.h"
@@ -109,4 +109,4 @@
 
 }  // namespace dart
 
-#endif  // VM_TYPE_TABLE_H_
+#endif  // RUNTIME_VM_TYPE_TABLE_H_
diff --git a/runtime/vm/unibrow-inl.h b/runtime/vm/unibrow-inl.h
index 340d1be..47ef64d 100644
--- a/runtime/vm/unibrow-inl.h
+++ b/runtime/vm/unibrow-inl.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_UNIBROW_INL_H_
-#define VM_UNIBROW_INL_H_
+#ifndef RUNTIME_VM_UNIBROW_INL_H_
+#define RUNTIME_VM_UNIBROW_INL_H_
 
 #include "vm/unibrow.h"
 
@@ -45,4 +45,4 @@
 
 }  // namespace unibrow
 
-#endif  // VM_UNIBROW_INL_H_
+#endif  // RUNTIME_VM_UNIBROW_INL_H_
diff --git a/runtime/vm/unibrow.cc b/runtime/vm/unibrow.cc
index 197db69..7f590d4 100644
--- a/runtime/vm/unibrow.cc
+++ b/runtime/vm/unibrow.cc
@@ -5,6 +5,8 @@
 // This file was generated at 2014-10-08 15:25:47.940335 (in v8, copied to dart)
 
 #include "vm/unibrow-inl.h"
+#include "vm/unibrow.h"
+
 #include <stdio.h>
 #include <stdlib.h>
 
diff --git a/runtime/vm/unibrow.h b/runtime/vm/unibrow.h
index 82250d2..f4ac7b5 100644
--- a/runtime/vm/unibrow.h
+++ b/runtime/vm/unibrow.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_UNIBROW_H_
-#define VM_UNIBROW_H_
+#ifndef RUNTIME_VM_UNIBROW_H_
+#define RUNTIME_VM_UNIBROW_H_
 
 #include <sys/types.h>
 
@@ -69,4 +69,4 @@
 
 }  // namespace unibrow
 
-#endif  // VM_UNIBROW_H_
+#endif  // RUNTIME_VM_UNIBROW_H_
diff --git a/runtime/vm/unicode.h b/runtime/vm/unicode.h
index 7ea10e9..6acf84f 100644
--- a/runtime/vm/unicode.h
+++ b/runtime/vm/unicode.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_UNICODE_H_
-#define VM_UNICODE_H_
+#ifndef RUNTIME_VM_UNICODE_H_
+#define RUNTIME_VM_UNICODE_H_
 
 #include "vm/allocation.h"
 #include "vm/globals.h"
@@ -228,4 +228,4 @@
 
 }  // namespace dart
 
-#endif  // VM_UNICODE_H_
+#endif  // RUNTIME_VM_UNICODE_H_
diff --git a/runtime/vm/unit_test.h b/runtime/vm/unit_test.h
index 189515f..9047f02 100644
--- a/runtime/vm/unit_test.h
+++ b/runtime/vm/unit_test.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_UNIT_TEST_H_
-#define VM_UNIT_TEST_H_
+#ifndef RUNTIME_VM_UNIT_TEST_H_
+#define RUNTIME_VM_UNIT_TEST_H_
 
 #include "include/dart_native_api.h"
 
@@ -619,4 +619,4 @@
 
 }  // namespace dart
 
-#endif  // VM_UNIT_TEST_H_
+#endif  // RUNTIME_VM_UNIT_TEST_H_
diff --git a/runtime/vm/uri.h b/runtime/vm/uri.h
index 453b371..3dfdda0 100644
--- a/runtime/vm/uri.h
+++ b/runtime/vm/uri.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_URI_H_
-#define VM_URI_H_
+#ifndef RUNTIME_VM_URI_H_
+#define RUNTIME_VM_URI_H_
 
 #include "platform/utils.h"
 #include "vm/globals.h"
@@ -30,4 +30,4 @@
 
 }  // namespace dart
 
-#endif  // VM_URI_H_
+#endif  // RUNTIME_VM_URI_H_
diff --git a/runtime/vm/verifier.h b/runtime/vm/verifier.h
index 8ae222d..bade6ab 100644
--- a/runtime/vm/verifier.h
+++ b/runtime/vm/verifier.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_VERIFIER_H_
-#define VM_VERIFIER_H_
+#ifndef RUNTIME_VM_VERIFIER_H_
+#define RUNTIME_VM_VERIFIER_H_
 
 #include "vm/flags.h"
 #include "vm/globals.h"
@@ -98,4 +98,4 @@
 
 }  // namespace dart
 
-#endif  // VM_VERIFIER_H_
+#endif  // RUNTIME_VM_VERIFIER_H_
diff --git a/runtime/vm/version.h b/runtime/vm/version.h
index 45afcb5..2acf205 100644
--- a/runtime/vm/version.h
+++ b/runtime/vm/version.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_VERSION_H_
-#define VM_VERSION_H_
+#ifndef RUNTIME_VM_VERSION_H_
+#define RUNTIME_VM_VERSION_H_
 
 #include "vm/allocation.h"
 
@@ -21,4 +21,4 @@
 
 }  // namespace dart
 
-#endif  // VM_VERSION_H_
+#endif  // RUNTIME_VM_VERSION_H_
diff --git a/runtime/vm/virtual_memory.h b/runtime/vm/virtual_memory.h
index 6e43cb4..8eefd30 100644
--- a/runtime/vm/virtual_memory.h
+++ b/runtime/vm/virtual_memory.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_VIRTUAL_MEMORY_H_
-#define VM_VIRTUAL_MEMORY_H_
+#ifndef RUNTIME_VM_VIRTUAL_MEMORY_H_
+#define RUNTIME_VM_VIRTUAL_MEMORY_H_
 
 #include "platform/utils.h"
 #include "vm/globals.h"
@@ -107,4 +107,4 @@
 
 }  // namespace dart
 
-#endif  // VM_VIRTUAL_MEMORY_H_
+#endif  // RUNTIME_VM_VIRTUAL_MEMORY_H_
diff --git a/runtime/vm/visitor.h b/runtime/vm/visitor.h
index 3b071e2..3c35b10 100644
--- a/runtime/vm/visitor.h
+++ b/runtime/vm/visitor.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_VISITOR_H_
-#define VM_VISITOR_H_
+#ifndef RUNTIME_VM_VISITOR_H_
+#define RUNTIME_VM_VISITOR_H_
 
 #include "vm/allocation.h"
 #include "vm/globals.h"
@@ -82,4 +82,4 @@
 
 }  // namespace dart
 
-#endif  // VM_VISITOR_H_
+#endif  // RUNTIME_VM_VISITOR_H_
diff --git a/runtime/vm/vm.gypi b/runtime/vm/vm.gypi
index a08a1b8..01b729e 100644
--- a/runtime/vm/vm.gypi
+++ b/runtime/vm/vm.gypi
@@ -967,6 +967,10 @@
       ]
     },
     {
+      # Unlike the other libraries in the SDK, dart:typed_data is not
+      # implemented as a patch applied to the base SDK implementation.
+      # Instead the VM has a complete replacement library and the
+      # implementation in the SDK is ignored.
       'target_name': 'generate_typed_data_cc_file',
       'type': 'none',
       'toolsets':['host'],
@@ -1234,5 +1238,456 @@
         },
       ]
     },
+    {
+      'target_name': 'generate_patched_sdk',
+      'type': 'none',
+      'toolsets': ['host'],
+      'dependencies': [
+        'dart_bootstrap#host',
+        'generate_async_library_patch',
+        'generate_collection_library_patch',
+        'generate_convert_library_patch',
+        'generate_core_library_patch',
+        'generate_developer_library_patch',
+        'generate_internal_library_patch',
+        'generate_io_library_patch',
+        'generate_isolate_library_patch',
+        'generate_math_library_patch',
+        'generate_mirrors_library_patch',
+        'generate_profiler_library_patch',
+        'generate_vmservice_library_patch',
+      ],
+      'actions': [
+        {
+          'action_name': 'patch_sdk',
+          'inputs': [
+            '<!@(["python", "../tools/list_files.py",' '"dart$",' '"sdk/lib"])',
+            '../../tools/patch_sdk.py',
+            '../../tools/patch_sdk.dart',
+            # Unlike the other libraries in the SDK, dart:typed_data is not
+            # implemented as a patch applied to the base SDK implementation.
+            # Instead the VM has a complete replacement library and the
+            # implementation in the SDK is ignored.
+            '../lib/typed_data.dart',
+            # Unlike the other libraries in the SDK, dart:_builtin and
+            # dart:nativewrappers are only available for the Dart VM.
+            '../bin/builtin.dart',
+            '../bin/vmservice/vmservice_io.dart',
+            '../bin/vmservice/loader.dart',
+            '../bin/vmservice/server.dart',
+            '<(gen_source_dir)/patches/async_patch.dart',
+            '<(gen_source_dir)/patches/collection_patch.dart',
+            '<(gen_source_dir)/patches/convert_patch.dart',
+            '<(gen_source_dir)/patches/core_patch.dart',
+            '<(gen_source_dir)/patches/developer_patch.dart',
+            '<(gen_source_dir)/patches/internal_patch.dart',
+            '<(gen_source_dir)/patches/io_patch.dart',
+            '<(gen_source_dir)/patches/isolate_patch.dart',
+            '<(gen_source_dir)/patches/math_patch.dart',
+            '<(gen_source_dir)/patches/mirrors_patch.dart',
+            '<(gen_source_dir)/patches/profiler_patch.dart',
+            '<(gen_source_dir)/patches/vmservice_patch.dart',
+          ],
+          'outputs': [
+            # Instead of listing all outputs we list a single well-known one.
+            '<(gen_source_dir)/patched_sdk/lib/core/core.dart',
+          ],
+          'action': [
+            'python',
+            '../tools/patch_sdk.py',
+            '--dart-executable',
+            '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)dart_bootstrap<(EXECUTABLE_SUFFIX)',
+            'vm',
+            '../sdk',
+            '<(gen_source_dir)/patches',
+            '<(gen_source_dir)/patched_sdk',
+          ],
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'async',
+        'library_uri': 'dart:async',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/async_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'collection',
+        'library_uri': 'dart:collection',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/collection_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'convert',
+        'library_uri': 'dart:convert',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/convert_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'core',
+        'library_uri': 'dart:core',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/core_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'developer',
+        'library_uri': 'dart:developer',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/developer_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'internal',
+        'library_uri': 'dart:_internal',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/internal_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'io',
+        'library_uri': 'dart:io',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../bin/io_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'isolate',
+        'library_uri': 'dart:isolate',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/isolate_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'math',
+        'library_uri': 'dart:math',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/math_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'mirrors',
+        'library_uri': 'dart:mirrors',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/mirrors_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'profiler',
+        'library_uri': 'dart:profiler',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/profiler_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
+    {
+      'variables': {
+        'library_name': 'vmservice',
+        'library_uri': 'dart:_vmservice',
+      },
+      'target_name': 'generate_<(library_name)_library_patch',
+      'type': 'none',
+      'toolsets': ['host'],
+      'includes': [
+        '../lib/vmservice_sources.gypi',
+      ],
+      'actions': [
+        {
+          'action_name': 'concatenate_<(library_name)_patches',
+          'inputs': [
+            '../tools/concatenate_patches.py',
+            '<@(_sources)',
+          ],
+          'outputs': [
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart'
+          ],
+          'action': [
+            'python',
+            'tools/concatenate_patches.py',
+            '--output',
+            '<(gen_source_dir)/patches/<(library_name)_patch.dart',
+            '<@(_sources)',
+          ],
+          'message': 'Generating <(library_uri) patch.',
+        },
+      ],
+    },
   ]
 }
diff --git a/runtime/vm/weak_code.h b/runtime/vm/weak_code.h
index 9fd11c1..42da4d7 100644
--- a/runtime/vm/weak_code.h
+++ b/runtime/vm/weak_code.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_WEAK_CODE_H_
-#define VM_WEAK_CODE_H_
+#ifndef RUNTIME_VM_WEAK_CODE_H_
+#define RUNTIME_VM_WEAK_CODE_H_
 
 #include "vm/allocation.h"
 #include "vm/globals.h"
@@ -39,4 +39,4 @@
 
 }  // namespace dart
 
-#endif  // VM_WEAK_CODE_H_
+#endif  // RUNTIME_VM_WEAK_CODE_H_
diff --git a/runtime/vm/weak_table.h b/runtime/vm/weak_table.h
index 2c40aa3..8489dda 100644
--- a/runtime/vm/weak_table.h
+++ b/runtime/vm/weak_table.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_WEAK_TABLE_H_
-#define VM_WEAK_TABLE_H_
+#ifndef RUNTIME_VM_WEAK_TABLE_H_
+#define RUNTIME_VM_WEAK_TABLE_H_
 
 #include "vm/globals.h"
 
@@ -171,4 +171,4 @@
 
 }  // namespace dart
 
-#endif  // VM_WEAK_TABLE_H_
+#endif  // RUNTIME_VM_WEAK_TABLE_H_
diff --git a/runtime/vm/zone.h b/runtime/vm/zone.h
index 0d274ad..6d216e9 100644
--- a/runtime/vm/zone.h
+++ b/runtime/vm/zone.h
@@ -2,8 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-#ifndef VM_ZONE_H_
-#define VM_ZONE_H_
+#ifndef RUNTIME_VM_ZONE_H_
+#define RUNTIME_VM_ZONE_H_
 
 #include "platform/utils.h"
 #include "vm/allocation.h"
@@ -259,4 +259,4 @@
 
 }  // namespace dart
 
-#endif  // VM_ZONE_H_
+#endif  // RUNTIME_VM_ZONE_H_
diff --git a/sdk/lib/html/dart2js/html_dart2js.dart b/sdk/lib/html/dart2js/html_dart2js.dart
index 3d4792d..2043449 100644
--- a/sdk/lib/html/dart2js/html_dart2js.dart
+++ b/sdk/lib/html/dart2js/html_dart2js.dart
@@ -39804,7 +39804,7 @@
   /**
    * Set this CSS Dimension to the specified number of x-heights.
    *
-   * One ex is equal to the the x-height of a font's baseline to its mean line,
+   * One ex is equal to the x-height of a font's baseline to its mean line,
    * generally the height of the letter "x" in the font, which is usually about
    * half the font-size.
    */
diff --git a/sdk/lib/html/dartium/html_dartium.dart b/sdk/lib/html/dartium/html_dartium.dart
index b3be182..5385090 100644
--- a/sdk/lib/html/dartium/html_dartium.dart
+++ b/sdk/lib/html/dartium/html_dartium.dart
@@ -44329,7 +44329,7 @@
   /**
    * Set this CSS Dimension to the specified number of x-heights.
    *
-   * One ex is equal to the the x-height of a font's baseline to its mean line,
+   * One ex is equal to the x-height of a font's baseline to its mean line,
    * generally the height of the letter "x" in the font, which is usually about
    * half the font-size.
    */
diff --git a/sdk/lib/html/dartium/nativewrappers.dart b/sdk/lib/html/dartium/nativewrappers.dart
index 55e5742..441749c 100644
--- a/sdk/lib/html/dartium/nativewrappers.dart
+++ b/sdk/lib/html/dartium/nativewrappers.dart
@@ -4,9 +4,31 @@
 
 library nativewrappers;
 
+class NativeFieldWrapperClass1 {
+  NativeFieldWrapperClass1() {
+    throw new UnsupportedError(
+        "Generative constructors not supported on native types.");
+  }
+}
+
 class NativeFieldWrapperClass2 {
   NativeFieldWrapperClass2() {
     throw new UnsupportedError(
         "Generative constructors not supported on native types.");
   }
 }
+
+class NativeFieldWrapperClass3 {
+  NativeFieldWrapperClass3() {
+    throw new UnsupportedError(
+        "Generative constructors not supported on native types.");
+  }
+}
+
+class NativeFieldWrapperClass4 {
+  NativeFieldWrapperClass4() {
+    throw new UnsupportedError(
+        "Generative constructors not supported on native types.");
+  }
+}
+
diff --git a/sdk/lib/io/io.dart b/sdk/lib/io/io.dart
index d3690f3..844a380 100644
--- a/sdk/lib/io/io.dart
+++ b/sdk/lib/io/io.dart
@@ -120,7 +120,7 @@
  *
  * The client connects to the WebSocket using the `connect()` method
  * and a URI that uses the Web Socket protocol.
- * The the client can write to the WebSocket with the `add()` method.
+ * The client can write to the WebSocket with the `add()` method.
  * For example,
  *
  *     WebSocket.connect('ws://127.0.0.1:4040/ws').then((socket) {
diff --git a/sdk/lib/isolate/isolate.dart b/sdk/lib/isolate/isolate.dart
index cb58a44..77b40c0 100644
--- a/sdk/lib/isolate/isolate.dart
+++ b/sdk/lib/isolate/isolate.dart
@@ -412,7 +412,7 @@
    * The [priority] must be one of [IMMEDIATE] or [BEFORE_NEXT_EVENT].
    * The shutdown is performed at different times depending on the priority:
    *
-   * * `IMMEDIATE`: The the isolate shuts down as soon as possible.
+   * * `IMMEDIATE`: The isolate shuts down as soon as possible.
    *     Control messages are handled in order, so all previously sent control
    *     events from this isolate will all have been processed.
    *     The shutdown should happen no later than if sent with
@@ -435,7 +435,7 @@
    * The [priority] must be one of [IMMEDIATE] or [BEFORE_NEXT_EVENT].
    * The response is sent at different times depending on the ping type:
    *
-   * * `IMMEDIATE`: The the isolate responds as soon as it receives the
+   * * `IMMEDIATE`: The isolate responds as soon as it receives the
    *     control message. This is after any previous control message
    *     from the same isolate has been received, but may be during
    *     execution of another event.
diff --git a/sdk/lib/mirrors/mirrors.dart b/sdk/lib/mirrors/mirrors.dart
index a5f5750..206410a 100644
--- a/sdk/lib/mirrors/mirrors.dart
+++ b/sdk/lib/mirrors/mirrors.dart
@@ -944,7 +944,7 @@
   /**
    * The defining type for this typedef.
    *
-   * If the the type referred to by the reflectee is a function type *F*, the
+   * If the type referred to by the reflectee is a function type *F*, the
    * result will be [:FunctionTypeMirror:] reflecting *F* which is abstract
    * and has an abstract method [:call:] whose signature corresponds to *F*.
    * For instance [:void f(int):] is the referent for [:typedef void f(int):].
diff --git a/sdk/lib/rules.gni b/sdk/lib/rules.gni
index 27779ea..fe51bbb 100644
--- a/sdk/lib/rules.gni
+++ b/sdk/lib/rules.gni
@@ -31,24 +31,29 @@
   } else {
     destination = "$root_gen_dir/dart_sdk"
   }
-  dart_sdk_sdk_lib_path =
-      rebase_path("sdk/lib", "", dart_root)
+  dart_sdk_sdk_lib_path = rebase_path("sdk/lib", "", dart_root)
   dart_sdk_tools_gypi_to_gn_path =
       rebase_path("tools/gypi_to_gn.py", "", dart_root)
+
   # The name of the SDK library being copied.
   lib_name = invoker.sdk_lib_name
+
   # The path to the libraries source directory.
   lib_path = rebase_path(lib_name, "", dart_sdk_sdk_lib_path)
+
   # The path to the sources gypi.
   lib_sources_gypi = lib_name + "_sources.gypi"
+
   # Get the contents of the gypi file.
   sdk_lib_sources_gypi =
       exec_script(dart_sdk_tools_gypi_to_gn_path,
-                  [rebase_path(lib_sources_gypi, "", lib_path)],
+                  [ rebase_path(lib_sources_gypi, "", lib_path) ],
                   "scope",
-                  [rebase_path(lib_sources_gypi, "", lib_path)])
+                  [ rebase_path(lib_sources_gypi, "", lib_path) ])
   copy(target_name) {
     sources = rebase_path(sdk_lib_sources_gypi.sources, "", lib_path)
-    outputs = [ "$destination/$lib_name/{{source_file_part}}" ]
+    outputs = [
+      "$destination/$lib_name/{{source_file_part}}",
+    ]
   }
 }
diff --git a/tests/co19/co19-analyzer2.status b/tests/co19/co19-analyzer2.status
index 0d0cdc5..97507e5 100644
--- a/tests/co19/co19-analyzer2.status
+++ b/tests/co19/co19-analyzer2.status
@@ -210,7 +210,6 @@
 LayoutTests/fast/backgrounds/001_t01: StaticWarning # Please triage this failure.
 LayoutTests/fast/canvas/canvas-arc-negative-radius_t01: StaticWarning # Issue 20939
 LayoutTests/fast/canvas/canvas-createImageBitmap-animated_t01: StaticWarning # Please triage this failure.
-LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-with-array-buffer-view_t01: StaticWarning # Please triage this failure.
 LayoutTests/fast/canvas/webgl/webgl-specific_t01: StaticWarning # Please triage this failure.
 LayoutTests/fast/dom/DOMImplementation/createDocument-namespace-err_t01: StaticWarning # Please triage this failure.
 LayoutTests/fast/dom/DOMImplementation/createDocumentType-err_t01: StaticWarning # Please triage this failure.
diff --git a/tests/co19/co19-kernel.status b/tests/co19/co19-kernel.status
new file mode 100644
index 0000000..e3a01cf
--- /dev/null
+++ b/tests/co19/co19-kernel.status
@@ -0,0 +1,626 @@
+# Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+# for details. All rights reserved. Use of this source code is governed by a
+# BSD-style license that can be found in the LICENSE file.
+
+# Disable tests globally for kernel.
+[ $compiler == rasta || $compiler == rastap || $compiler == dartk || $compiler == dartkp ]
+Language/Metadata/*: Skip # No support for metadata ATM.
+LibTest/async/DeferredLibrary/DeferredLibrary_A01_t01: Skip # No support for deferred libraries.
+LibTest/isolate/*: Skip # No support for isolates ATM.
+
+# Override tests marked as failing elsewhere.
+[ $compiler == dartk || $compiler == dartkp ]
+Language/Libraries_and_Scripts/Exports/reexport_t01: Pass
+
+# dartk: JIT failures
+[ $compiler == dartk && $runtime == vm ]
+Language/Classes/Constructors/Generative_Constructors/execution_of_a_superinitializer_t01: RuntimeError
+Language/Classes/Constructors/Generative_Constructors/execution_of_an_initializer_t02: RuntimeError
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t01: Crash
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t03: Crash
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t04: Crash
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t05: Crash
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t06: Crash
+Language/Classes/Constructors/Generative_Constructors/initializing_formals_execution_t02: RuntimeError
+Language/Classes/Constructors/Generative_Constructors/initializing_this_t02: Crash
+Language/Classes/Getters/static_getter_t02: CompileTimeError
+Language/Classes/Setters/name_t08: CompileTimeError
+Language/Classes/Setters/name_t09: CompileTimeError
+Language/Classes/Setters/name_t10: CompileTimeError
+Language/Classes/Setters/name_t11: CompileTimeError
+Language/Classes/Setters/name_t12: CompileTimeError
+Language/Classes/Setters/name_t13: CompileTimeError
+Language/Classes/Setters/name_t14: CompileTimeError
+Language/Classes/Setters/name_t15: CompileTimeError
+Language/Classes/definition_t23: CompileTimeError
+Language/Enums/declaration_equivalent_t01: RuntimeError
+Language/Enums/syntax_t08: MissingCompileTimeError
+Language/Enums/syntax_t09: MissingCompileTimeError
+Language/Expressions/Assignment/indexed_expression_super_t01: RuntimeError
+Language/Expressions/Assignment/indexed_expression_super_t02: RuntimeError
+Language/Expressions/Assignment/indexed_expression_super_t04: RuntimeError
+Language/Expressions/Assignment/super_assignment_failed_t01: RuntimeError
+Language/Expressions/Assignment/super_assignment_failed_t02: RuntimeError
+Language/Expressions/Assignment/super_assignment_t06: RuntimeError
+Language/Expressions/Assignment/super_assignment_value_t02: RuntimeError
+Language/Expressions/Constants/exception_t01: MissingCompileTimeError
+Language/Expressions/Constants/exception_t02: MissingCompileTimeError
+Language/Expressions/Constants/string_length_t01: Crash
+Language/Expressions/Function_Invocation/Actual_Argument_List_Evaluation/syntax_t05: MissingCompileTimeError
+Language/Expressions/Function_Invocation/Function_Expression_Invocation/not_a_function_expression_t01: RuntimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/function_expr_invocation_t03: RuntimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/function_expr_invocation_t04: RuntimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/instance_context_invocation_t03: MissingCompileTimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/instance_context_invocation_t04: MissingCompileTimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/static_method_invocation_t02: RuntimeError
+Language/Expressions/Identifier_Reference/built_in_identifier_t35: Pass
+Language/Expressions/Identifier_Reference/built_in_identifier_t36: Pass
+Language/Expressions/Identifier_Reference/built_in_identifier_t37: Pass
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t14: Pass
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t17: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t18: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t21: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t22: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t23: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t24: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t25: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t26: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t27: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t28: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t29: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t30: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t31: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t32: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/evaluation_property_extraction_t03: RuntimeError
+Language/Expressions/Identifier_Reference/evaluation_type_parameter_t01: RuntimeError
+Language/Expressions/Identifier_Reference/evaluation_type_parameter_t02: MissingCompileTimeError
+Language/Expressions/Instance_Creation/Const/canonicalized_t05: RuntimeError
+Language/Expressions/Instance_Creation/New/evaluation_t12: RuntimeError
+Language/Expressions/Instance_Creation/New/evaluation_t19: RuntimeError
+Language/Expressions/Instance_Creation/New/evaluation_t20: RuntimeError
+Language/Expressions/Lookup/Method_Lookup/superclass_t08: RuntimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/accessible_instance_member_t05: RuntimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/evaluation_t07: RuntimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/method_lookup_failed_t18: RuntimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/syntax_t05: MissingCompileTimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/syntax_t10: MissingCompileTimeError
+Language/Expressions/Method_Invocation/Super_Invocation/evaluation_t05: Crash
+Language/Expressions/Method_Invocation/Super_Invocation/getter_lookup_failed_t01: RuntimeError
+Language/Expressions/Method_Invocation/Super_Invocation/getter_lookup_failed_t02: RuntimeError
+Language/Expressions/Method_Invocation/Super_Invocation/getter_lookup_failed_t03: RuntimeError
+Language/Expressions/Method_Invocation/Super_Invocation/getter_lookup_failed_t04: RuntimeError
+Language/Expressions/Method_Invocation/Super_Invocation/syntax_t05: MissingCompileTimeError
+Language/Expressions/Object_Identity/string_t01: RuntimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/identical_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/identical_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/identical_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/named_parameters_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/positional_parameters_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/closurization_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/deferred_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/malbounded_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/malbounded_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/malformed_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/malformed_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/no_such_method_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/no_such_method_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/not_class_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/not_class_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/not_class_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/static_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/static_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/static_type_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t01: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t02: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t03: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t04: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t05: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t06: Pass
+Language/Expressions/Property_Extraction/General_Closurization/expression_evaluation_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/expression_evaluation_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/expression_evaluation_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t07: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t08: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t09: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t07: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t07: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t08: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t07: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t08: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t09: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/expression_evaluation_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Closurization/identical_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Closurization/identical_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Closurization/named_parameters_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Closurization/positional_parameters_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/deferred_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/malbounded_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/malbounded_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/malformed_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/malformed_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/no_such_method_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/no_such_method_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/not_class_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/not_class_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/not_class_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/static_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/static_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/static_type_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/static_type_t04: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t04: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t05: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t06: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t08: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_closurization_named_params_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_closurization_named_params_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_closurization_positional_params_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_closurization_positional_params_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_identical_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_identical_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_identical_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_list_access_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_list_assignment_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t04: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t05: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t06: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t08: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t09: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t10: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t11: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t12: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t13: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t14: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t15: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t16: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t17: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_unary_bitwise_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t04: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t05: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t06: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t08: CompileTimeError
+Language/Expressions/Property_Extraction/Super_Getter_Access_and_Method_Closurization/no_such_method_t01: RuntimeError
+Language/Expressions/Property_Extraction/Super_Getter_Access_and_Method_Closurization/no_such_method_t02: RuntimeError
+Language/Expressions/Spawning_an_Isolate/new_isolate_t01: Crash
+Language/Expressions/Strings/adjacent_strings_t02: RuntimeError
+Language/Expressions/Type_Test/evaluation_t10: RuntimeError
+Language/Functions/External_Functions/not_connected_to_a_body_t01: RuntimeError
+Language/Functions/Formal_Parameters/syntax_t04: MissingCompileTimeError
+Language/Functions/Formal_Parameters/syntax_t05: MissingCompileTimeError
+Language/Functions/Formal_Parameters/syntax_t12: MissingCompileTimeError
+Language/Interfaces/Superinterfaces/Inheritance_and_Overriding/same_name_method_and_getter_t01: CompileTimeError
+Language/Interfaces/Superinterfaces/Inheritance_and_Overriding/same_name_method_and_getter_t02: CompileTimeError
+Language/Libraries_and_Scripts/Exports/invalid_uri_t02: Pass
+Language/Libraries_and_Scripts/Exports/syntax_t01: MissingCompileTimeError
+Language/Libraries_and_Scripts/Exports/syntax_t04: MissingCompileTimeError
+Language/Libraries_and_Scripts/Exports/syntax_t05: MissingCompileTimeError
+Language/Libraries_and_Scripts/Exports/syntax_t06: MissingCompileTimeError
+Language/Libraries_and_Scripts/Imports/deferred_import_t01: RuntimeError
+Language/Libraries_and_Scripts/Imports/deferred_import_t02: RuntimeError
+Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t02: CompileTimeError
+Language/Libraries_and_Scripts/Imports/invalid_uri_t02: Pass
+Language/Libraries_and_Scripts/Imports/static_type_t01: RuntimeError
+Language/Libraries_and_Scripts/Parts/compilation_t02: Crash
+Language/Libraries_and_Scripts/Parts/syntax_t06: Pass
+Language/Libraries_and_Scripts/Scripts/top_level_main_t01: Crash
+Language/Libraries_and_Scripts/Scripts/top_level_main_t02: Crash
+Language/Libraries_and_Scripts/Scripts/top_level_main_t05: Crash
+Language/Libraries_and_Scripts/definition_syntax_t01: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t03: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t04: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t06: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t07: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t08: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t09: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t10: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t15: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t17: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t18: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t19: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t20: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t21: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t22: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t23: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t24: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t25: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t26: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t27: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t29: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t02: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t03: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t04: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t05: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t06: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t07: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t08: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t09: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t10: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t11: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t12: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t13: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t14: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t15: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t16: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t17: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t18: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t19: MissingCompileTimeError
+Language/Mixins/Mixin_Application/error_t01: MissingCompileTimeError
+Language/Mixins/Mixin_Application/error_t02: MissingCompileTimeError
+Language/Mixins/Mixin_Application/syntax_t16: Crash
+Language/Statements/Break/label_t03: MissingCompileTimeError
+Language/Statements/Break/label_t04: MissingCompileTimeError
+Language/Statements/Continue/label_t07: MissingCompileTimeError
+Language/Statements/Labels/syntax_t03: Pass
+Language/Statements/Rethrow/execution_t04: RuntimeError
+Language/Statements/Switch/syntax_t02: Pass
+Language/Statements/Try/catch_scope_t01: RuntimeError
+Language/Types/Interface_Types/subtype_t44: RuntimeError
+Language/Types/Static_Types/deferred_type_t01: RuntimeError
+Language/Variables/final_or_static_initialization_t01: MissingCompileTimeError
+Language/Variables/final_or_static_initialization_t02: MissingCompileTimeError
+Language/Variables/final_or_static_initialization_t03: MissingCompileTimeError
+Language/Variables/final_t04: MissingCompileTimeError
+Language/Variables/final_t05: MissingCompileTimeError
+Language/Variables/final_t06: MissingCompileTimeError
+Language/Variables/final_t07: MissingCompileTimeError
+LibTest/core/Invocation/isAccessor_A01_t01: RuntimeError
+LibTest/core/Invocation/isAccessor_A01_t02: RuntimeError
+LibTest/core/Invocation/isGetter_A01_t01: RuntimeError
+LibTest/core/Invocation/isGetter_A01_t02: RuntimeError
+LibTest/core/Invocation/isMethod_A01_t01: RuntimeError
+LibTest/core/Invocation/isMethod_A01_t02: RuntimeError
+LibTest/core/Invocation/isSetter_A01_t01: RuntimeError
+LibTest/core/Invocation/isSetter_A01_t02: RuntimeError
+LibTest/core/Invocation/memberName_A01_t01: RuntimeError
+LibTest/core/Invocation/namedArguments_A01_t01: RuntimeError
+LibTest/core/Invocation/positionalArguments_A01_t01: RuntimeError
+
+# dartk: precompilation failures
+[ $compiler == dartkp && $runtime == dart_precompiled ]
+Language/Classes/Constructors/Generative_Constructors/execution_of_a_superinitializer_t01: RuntimeError
+Language/Classes/Constructors/Generative_Constructors/execution_of_an_initializer_t02: RuntimeError
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t01: Crash
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t03: Crash
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t04: Crash
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t05: Crash
+Language/Classes/Constructors/Generative_Constructors/formal_parameter_t06: Crash
+Language/Classes/Constructors/Generative_Constructors/initializing_formals_execution_t02: RuntimeError
+Language/Classes/Constructors/Generative_Constructors/initializing_this_t02: Crash
+Language/Classes/Getters/static_getter_t02: CompileTimeError
+Language/Classes/Setters/name_t08: CompileTimeError
+Language/Classes/Setters/name_t09: CompileTimeError
+Language/Classes/Setters/name_t10: CompileTimeError
+Language/Classes/Setters/name_t11: CompileTimeError
+Language/Classes/Setters/name_t12: CompileTimeError
+Language/Classes/Setters/name_t13: CompileTimeError
+Language/Classes/Setters/name_t14: CompileTimeError
+Language/Classes/Setters/name_t15: CompileTimeError
+Language/Classes/definition_t23: CompileTimeError
+Language/Enums/declaration_equivalent_t01: RuntimeError
+Language/Enums/syntax_t08: MissingCompileTimeError
+Language/Enums/syntax_t09: MissingCompileTimeError
+Language/Expressions/Assignment/indexed_expression_super_t01: RuntimeError
+Language/Expressions/Assignment/indexed_expression_super_t02: RuntimeError
+Language/Expressions/Assignment/indexed_expression_super_t04: RuntimeError
+Language/Expressions/Assignment/super_assignment_failed_t01: RuntimeError
+Language/Expressions/Assignment/super_assignment_failed_t02: RuntimeError
+Language/Expressions/Assignment/super_assignment_t06: RuntimeError
+Language/Expressions/Assignment/super_assignment_value_t02: RuntimeError
+Language/Expressions/Constants/exception_t01: Crash
+Language/Expressions/Constants/exception_t02: Crash
+Language/Expressions/Constants/string_length_t01: Crash
+Language/Expressions/Function_Invocation/Actual_Argument_List_Evaluation/syntax_t05: MissingCompileTimeError
+Language/Expressions/Function_Invocation/Function_Expression_Invocation/not_a_function_expression_t01: Crash
+Language/Expressions/Function_Invocation/Unqualified_Invocation/function_expr_invocation_t03: RuntimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/function_expr_invocation_t04: RuntimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/instance_context_invocation_t03: MissingCompileTimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/instance_context_invocation_t04: MissingCompileTimeError
+Language/Expressions/Function_Invocation/Unqualified_Invocation/static_method_invocation_t02: RuntimeError
+Language/Expressions/Identifier_Reference/built_in_identifier_t35: Pass
+Language/Expressions/Identifier_Reference/built_in_identifier_t36: Pass
+Language/Expressions/Identifier_Reference/built_in_identifier_t37: Pass
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t14: Pass
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t17: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t18: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t21: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t22: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t23: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t24: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t25: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t26: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t27: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t28: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t29: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t30: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t31: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/built_in_not_dynamic_t32: MissingCompileTimeError
+Language/Expressions/Identifier_Reference/evaluation_property_extraction_t03: RuntimeError
+Language/Expressions/Identifier_Reference/evaluation_type_parameter_t01: RuntimeError
+Language/Expressions/Instance_Creation/New/evaluation_t12: RuntimeError
+Language/Expressions/Instance_Creation/New/evaluation_t19: RuntimeError
+Language/Expressions/Instance_Creation/New/evaluation_t20: RuntimeError
+Language/Expressions/Lookup/Method_Lookup/superclass_t08: RuntimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/accessible_instance_member_t05: RuntimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/evaluation_t07: RuntimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/method_lookup_failed_t18: RuntimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/syntax_t05: MissingCompileTimeError
+Language/Expressions/Method_Invocation/Ordinary_Invocation/syntax_t10: MissingCompileTimeError
+Language/Expressions/Method_Invocation/Super_Invocation/evaluation_t05: Crash
+Language/Expressions/Method_Invocation/Super_Invocation/getter_lookup_failed_t01: RuntimeError
+Language/Expressions/Method_Invocation/Super_Invocation/getter_lookup_failed_t02: RuntimeError
+Language/Expressions/Method_Invocation/Super_Invocation/getter_lookup_failed_t03: RuntimeError
+Language/Expressions/Method_Invocation/Super_Invocation/getter_lookup_failed_t04: RuntimeError
+Language/Expressions/Method_Invocation/Super_Invocation/syntax_t05: MissingCompileTimeError
+Language/Expressions/Multiplicative_Expressions/syntax_t01: Crash
+Language/Expressions/Null/instance_of_class_null_t01: Crash
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/identical_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/identical_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/identical_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/named_parameters_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Closurization/positional_parameters_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/closurization_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/deferred_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/malbounded_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/malbounded_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/malformed_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/malformed_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/no_such_method_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/no_such_method_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/not_class_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/not_class_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/not_class_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/static_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/static_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Anonymous_Constructor_Extraction/static_type_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t01: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t02: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t03: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t04: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t05: Pass
+Language/Expressions/Property_Extraction/General_Closurization/class_object_member_t06: Pass
+Language/Expressions/Property_Extraction/General_Closurization/expression_evaluation_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/expression_evaluation_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/expression_evaluation_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t07: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t08: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/getter_lookup_t09: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/method_lookup_t07: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t07: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/no_accessible_member_t08: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t07: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t08: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/setter_lookup_t09: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t03: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t04: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t05: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t06: CompileTimeError
+Language/Expressions/Property_Extraction/General_Closurization/static_type_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Getter_Access_and_Method_Extraction/expression_evaluation_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Closurization/identical_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Closurization/identical_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Closurization/named_parameters_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Closurization/positional_parameters_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/deferred_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/malbounded_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/malbounded_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/malformed_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/malformed_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/no_such_method_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/no_such_method_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/not_class_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/not_class_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/not_class_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/static_type_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/static_type_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/static_type_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Named_Constructor_Extraction/static_type_t04: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t04: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t05: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t06: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/getter_closurization_t08: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_closurization_named_params_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_closurization_named_params_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_closurization_positional_params_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_closurization_positional_params_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_identical_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_identical_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/method_identical_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_list_access_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_list_assignment_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t04: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t05: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t06: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t08: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t09: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t10: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t11: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t12: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t13: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t14: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t15: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t16: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_t17: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/operator_closurization_unary_bitwise_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t01: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t02: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t03: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t04: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t05: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t06: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t07: CompileTimeError
+Language/Expressions/Property_Extraction/Ordinary_Member_Closurization/setter_closurization_t08: CompileTimeError
+Language/Expressions/Property_Extraction/Super_Getter_Access_and_Method_Closurization/no_such_method_t01: RuntimeError
+Language/Expressions/Property_Extraction/Super_Getter_Access_and_Method_Closurization/no_such_method_t02: RuntimeError
+Language/Expressions/Type_Test/evaluation_t10: RuntimeError
+Language/Expressions/Unary_Expressions/syntax_t10: Crash
+Language/Functions/External_Functions/not_connected_to_a_body_t01: RuntimeError
+Language/Functions/Formal_Parameters/syntax_t04: MissingCompileTimeError
+Language/Functions/Formal_Parameters/syntax_t05: MissingCompileTimeError
+Language/Functions/Formal_Parameters/syntax_t12: MissingCompileTimeError
+Language/Interfaces/Superinterfaces/Inheritance_and_Overriding/same_name_method_and_getter_t01: CompileTimeError
+Language/Interfaces/Superinterfaces/Inheritance_and_Overriding/same_name_method_and_getter_t02: CompileTimeError
+Language/Libraries_and_Scripts/Exports/invalid_uri_t02: Pass
+Language/Libraries_and_Scripts/Exports/syntax_t01: MissingCompileTimeError
+Language/Libraries_and_Scripts/Exports/syntax_t04: MissingCompileTimeError
+Language/Libraries_and_Scripts/Exports/syntax_t05: MissingCompileTimeError
+Language/Libraries_and_Scripts/Exports/syntax_t06: MissingCompileTimeError
+Language/Libraries_and_Scripts/Imports/deferred_import_t01: RuntimeError
+Language/Libraries_and_Scripts/Imports/deferred_import_t02: RuntimeError
+Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t02: CompileTimeError
+Language/Libraries_and_Scripts/Imports/invalid_uri_t02: Pass
+Language/Libraries_and_Scripts/Imports/static_type_t01: RuntimeError
+Language/Libraries_and_Scripts/Parts/compilation_t02: Crash
+Language/Libraries_and_Scripts/Parts/syntax_t06: Pass
+Language/Libraries_and_Scripts/Scripts/top_level_main_t01: Crash
+Language/Libraries_and_Scripts/Scripts/top_level_main_t02: Crash
+Language/Libraries_and_Scripts/Scripts/top_level_main_t05: Crash
+Language/Libraries_and_Scripts/definition_syntax_t01: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t03: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t04: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t06: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t07: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t08: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t09: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t10: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t15: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t17: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t18: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t19: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t20: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t21: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t22: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t23: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t24: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t25: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t26: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t27: MissingCompileTimeError
+Language/Libraries_and_Scripts/definition_syntax_t29: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t02: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t03: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t04: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t05: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t06: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t07: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t08: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t09: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t10: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t11: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t12: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t13: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t14: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t15: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t16: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t17: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t18: MissingCompileTimeError
+Language/Libraries_and_Scripts/top_level_syntax_t19: MissingCompileTimeError
+Language/Statements/Break/label_t03: MissingCompileTimeError
+Language/Statements/Break/label_t04: MissingCompileTimeError
+Language/Statements/Continue/label_t07: MissingCompileTimeError
+Language/Statements/Labels/syntax_t03: Pass
+Language/Statements/Rethrow/execution_t04: RuntimeError
+Language/Statements/Switch/syntax_t02: Pass
+Language/Statements/Try/catch_scope_t01: RuntimeError
+Language/Types/Interface_Types/subtype_t44: RuntimeError
+Language/Types/Static_Types/deferred_type_t01: RuntimeError
+Language/Variables/final_or_static_initialization_t01: MissingCompileTimeError
+Language/Variables/final_or_static_initialization_t02: MissingCompileTimeError
+Language/Variables/final_or_static_initialization_t03: MissingCompileTimeError
+Language/Variables/final_t04: MissingCompileTimeError
+Language/Variables/final_t05: MissingCompileTimeError
+Language/Variables/final_t06: MissingCompileTimeError
+Language/Variables/final_t07: MissingCompileTimeError
+LibTest/core/Invocation/isAccessor_A01_t01: RuntimeError
+LibTest/core/Invocation/isAccessor_A01_t02: Crash
+LibTest/core/Invocation/isGetter_A01_t01: RuntimeError
+LibTest/core/Invocation/isGetter_A01_t02: Crash
+LibTest/core/Invocation/isMethod_A01_t01: Crash
+LibTest/core/Invocation/isMethod_A01_t02: RuntimeError
+LibTest/core/Invocation/isSetter_A01_t01: RuntimeError
+LibTest/core/Invocation/isSetter_A01_t02: Crash
+LibTest/core/Invocation/memberName_A01_t01: RuntimeError
+LibTest/core/Invocation/namedArguments_A01_t01: Crash
+LibTest/core/Invocation/positionalArguments_A01_t01: Crash
diff --git a/tests/compiler/dart2js/class_set_test.dart b/tests/compiler/dart2js/class_set_test.dart
index 64442b1..9eea4f1 100644
--- a/tests/compiler/dart2js/class_set_test.dart
+++ b/tests/compiler/dart2js/class_set_test.dart
@@ -529,7 +529,7 @@
   checkForEach(X, [X, A, B, D, C, G, F, I, H, E],
       skipSubclasses: [D], forEachSubtype: true);
   checkForEach(X, [A, D, C, G, F, I, H, E],
-      forEachSubtype: true, mask: ClassHierarchyNode.DIRECTLY_INSTANTIATED);
+      forEachSubtype: true, mask: ClassHierarchyNode.EXPLICITLY_INSTANTIATED);
   checkForEach(X, [A, B, D, C, G, F, I, H, E],
       forEachSubtype: true, mask: ClassHierarchyNode.INSTANTIATED);
 
diff --git a/tests/compiler/dart2js/dart2js.status b/tests/compiler/dart2js/dart2js.status
index 9b3a477..7900590 100644
--- a/tests/compiler/dart2js/dart2js.status
+++ b/tests/compiler/dart2js/dart2js.status
@@ -8,6 +8,8 @@
 
 kernel/*: Slow, Pass
 
+kernel/visitor_test: Fail # Issue 27684
+
 boolified_operator_test: Fail # Issue 8001
 
 # Don't mark these tests as failing. Instead, fix the errors/warnings that they
diff --git a/tests/compiler/dart2js/jsinterop/world_test.dart b/tests/compiler/dart2js/jsinterop/world_test.dart
index e994791..074860f 100644
--- a/tests/compiler/dart2js/jsinterop/world_test.dart
+++ b/tests/compiler/dart2js/jsinterop/world_test.dart
@@ -21,6 +21,7 @@
 testClasses() async {
   test(String mainSource,
       {List<String> directlyInstantiated: const <String>[],
+      List<String> abstractlyInstantiated: const <String>[],
       List<String> indirectlyInstantiated: const <String>[]}) async {
     TypeEnvironment env = await TypeEnvironment.create(
         r"""
@@ -120,6 +121,13 @@
             "Expected $name to be directly instantiated in `${mainSource}`:"
             "\n${world.dump(cls)}");
       }
+      if (abstractlyInstantiated.contains(name)) {
+        isInstantiated = true;
+        Expect.isTrue(
+            world.isAbstractlyInstantiated(cls),
+            "Expected $name to be abstractly instantiated in `${mainSource}`:"
+            "\n${world.dump(cls)}");
+      }
       if (indirectlyInstantiated.contains(name)) {
         isInstantiated = true;
         Expect.isTrue(
@@ -139,19 +147,19 @@
   await test('main() {}');
 
   await test('main() => newA();',
-      directlyInstantiated: ['A', 'B', 'C', 'D'],
+      abstractlyInstantiated: ['A', 'B', 'C', 'D'],
       indirectlyInstantiated: ['Object', 'Interceptor', 'JavaScriptObject']);
 
   await test('main() => newB();',
-      directlyInstantiated: ['A', 'B', 'C', 'D'],
+      abstractlyInstantiated: ['A', 'B', 'C', 'D'],
       indirectlyInstantiated: ['Object', 'Interceptor', 'JavaScriptObject']);
 
   await test('main() => newC();',
-      directlyInstantiated: ['A', 'B', 'C', 'D'],
+      abstractlyInstantiated: ['A', 'B', 'C', 'D'],
       indirectlyInstantiated: ['Object', 'Interceptor', 'JavaScriptObject']);
 
   await test('main() => newD();',
-      directlyInstantiated: ['A', 'B', 'C', 'D'],
+      abstractlyInstantiated: ['A', 'B', 'C', 'D'],
       indirectlyInstantiated: ['Object', 'Interceptor', 'JavaScriptObject']);
 
   await test('main() => newE();', directlyInstantiated: ['E']);
@@ -159,6 +167,7 @@
   await test('main() => newF();', directlyInstantiated: ['F']);
 
   await test('main() => [newD(), newE()];',
-      directlyInstantiated: ['A', 'B', 'C', 'D', 'E'],
+      directlyInstantiated: ['E'],
+      abstractlyInstantiated: ['A', 'B', 'C', 'D'],
       indirectlyInstantiated: ['Object', 'Interceptor', 'JavaScriptObject']);
 }
diff --git a/tests/compiler/dart2js/world_test.dart b/tests/compiler/dart2js/world_test.dart
index c68e05a..4e29307 100644
--- a/tests/compiler/dart2js/world_test.dart
+++ b/tests/compiler/dart2js/world_test.dart
@@ -7,8 +7,9 @@
 import 'package:expect/expect.dart';
 import 'package:async_helper/async_helper.dart';
 import 'type_test_helper.dart';
-import 'package:compiler/src/common.dart';
-import 'package:compiler/src/elements/elements.dart' show Element, ClassElement;
+import 'package:compiler/src/common/names.dart';
+import 'package:compiler/src/elements/elements.dart'
+    show Element, ClassElement, LibraryElement;
 import 'package:compiler/src/universe/class_set.dart';
 import 'package:compiler/src/world.dart' show ClosedWorld;
 
@@ -16,6 +17,7 @@
   asyncTest(() async {
     await testClassSets();
     await testProperties();
+    await testNativeClasses();
   });
 }
 
@@ -33,6 +35,7 @@
       class X {}
       """,
       mainSource: r"""
+      import 'dart:html' as html;
       main() {
         new A();
         new B();
@@ -41,6 +44,8 @@
         new E();
         new F();
         new G();
+        html.window;
+        new html.Worker('');
       }
       """,
       useMockCompiler: false);
@@ -298,3 +303,210 @@
   check("H3", hasStrictSubtype: false, hasOnlySubclasses: true);
   check("H4", hasStrictSubtype: false, hasOnlySubclasses: true);
 }
+
+testNativeClasses() async {
+  var env = await TypeEnvironment.create('',
+      mainSource: r"""
+      import 'dart:html' as html;
+      main() {
+        html.window; // Creates 'Window'.
+        new html.Worker(''); // Creates 'Worker'.
+        new html.CanvasElement() // Creates CanvasElement
+            ..getContext(''); // Creates CanvasRenderingContext2D
+      }
+      """,
+      useMockCompiler: false);
+  ClosedWorld closedWorld = env.compiler.closedWorld;
+  LibraryElement dart_html =
+      env.compiler.libraryLoader.lookupLibrary(Uris.dart_html);
+
+  ClassElement clsEventTarget = dart_html.findExported('EventTarget');
+  ClassElement clsWindow = dart_html.findExported('Window');
+  ClassElement clsAbstractWorker = dart_html.findExported('AbstractWorker');
+  ClassElement clsWorker = dart_html.findExported('Worker');
+  ClassElement clsCanvasElement = dart_html.findExported('CanvasElement');
+  ClassElement clsCanvasRenderingContext =
+      dart_html.findExported('CanvasRenderingContext');
+  ClassElement clsCanvasRenderingContext2D =
+      dart_html.findExported('CanvasRenderingContext2D');
+
+  List<ClassElement> allClasses = [
+    clsEventTarget,
+    clsWindow,
+    clsAbstractWorker,
+    clsWorker,
+    clsCanvasElement,
+    clsCanvasRenderingContext,
+    clsCanvasRenderingContext2D
+  ];
+
+  check(ClassElement cls,
+      {bool isDirectlyInstantiated,
+      bool isAbstractlyInstantiated,
+      bool isIndirectlyInstantiated,
+      bool hasStrictSubtype,
+      bool hasOnlySubclasses,
+      ClassElement lubOfInstantiatedSubclasses,
+      ClassElement lubOfInstantiatedSubtypes,
+      int instantiatedSubclassCount,
+      int instantiatedSubtypeCount,
+      List<ClassElement> subclasses: const <ClassElement>[],
+      List<ClassElement> subtypes: const <ClassElement>[]}) {
+    ClassSet classSet = closedWorld.getClassSet(cls);
+    ClassHierarchyNode node = classSet.node;
+
+    String dumpText = '\n${closedWorld.dump(cls)}';
+
+    Expect.equals(
+        isDirectlyInstantiated,
+        closedWorld.isDirectlyInstantiated(cls),
+        "Unexpected isDirectlyInstantiated property on $cls.$dumpText");
+    Expect.equals(
+        isAbstractlyInstantiated,
+        closedWorld.isAbstractlyInstantiated(cls),
+        "Unexpected isAbstractlyInstantiated property on $cls.$dumpText");
+    Expect.equals(
+        isIndirectlyInstantiated,
+        closedWorld.isIndirectlyInstantiated(cls),
+        "Unexpected isIndirectlyInstantiated property on $cls.$dumpText");
+    Expect.equals(hasStrictSubtype, closedWorld.hasAnyStrictSubtype(cls),
+        "Unexpected hasAnyStrictSubtype property on $cls.$dumpText");
+    Expect.equals(hasOnlySubclasses, closedWorld.hasOnlySubclasses(cls),
+        "Unexpected hasOnlySubclasses property on $cls.$dumpText");
+    Expect.equals(
+        lubOfInstantiatedSubclasses,
+        node.getLubOfInstantiatedSubclasses(),
+        "Unexpected getLubOfInstantiatedSubclasses() result on $cls.$dumpText");
+    Expect.equals(
+        lubOfInstantiatedSubtypes,
+        classSet.getLubOfInstantiatedSubtypes(),
+        "Unexpected getLubOfInstantiatedSubtypes() result on $cls.$dumpText");
+    if (instantiatedSubclassCount != null) {
+      Expect.equals(instantiatedSubclassCount, node.instantiatedSubclassCount,
+          "Unexpected instantiatedSubclassCount property on $cls.$dumpText");
+    }
+    if (instantiatedSubtypeCount != null) {
+      Expect.equals(instantiatedSubtypeCount, classSet.instantiatedSubtypeCount,
+          "Unexpected instantiatedSubtypeCount property on $cls.$dumpText");
+    }
+    for (ClassElement other in allClasses) {
+      if (other == cls) continue;
+      if (!closedWorld.isExplicitlyInstantiated(other)) continue;
+      Expect.equals(
+          subclasses.contains(other),
+          closedWorld.isSubclassOf(other, cls),
+          "Unexpected subclass relation between $other and $cls.");
+      Expect.equals(
+          subtypes.contains(other),
+          closedWorld.isSubtypeOf(other, cls),
+          "Unexpected subtype relation between $other and $cls.");
+    }
+
+    Set<ClassElement> strictSubclasses = new Set<ClassElement>();
+    closedWorld.forEachStrictSubclassOf(cls, (ClassElement other) {
+      if (allClasses.contains(other)) {
+        strictSubclasses.add(other);
+      }
+    });
+    Expect.setEquals(subclasses, strictSubclasses,
+        "Unexpected strict subclasses of $cls: ${strictSubclasses}.");
+
+    Set<ClassElement> strictSubtypes = new Set<ClassElement>();
+    closedWorld.forEachStrictSubtypeOf(cls, (ClassElement other) {
+      if (allClasses.contains(other)) {
+        strictSubtypes.add(other);
+      }
+    });
+    Expect.setEquals(subtypes, strictSubtypes,
+        "Unexpected strict subtypes of $cls: $strictSubtypes.");
+  }
+
+  // Extended by Window.
+  check(clsEventTarget,
+      isDirectlyInstantiated: false,
+      isAbstractlyInstantiated: false,
+      isIndirectlyInstantiated: true,
+      hasStrictSubtype: true,
+      hasOnlySubclasses: true,
+      lubOfInstantiatedSubclasses: clsEventTarget,
+      lubOfInstantiatedSubtypes: clsEventTarget,
+      // May vary with implementation, do no test.
+      instantiatedSubclassCount: null,
+      instantiatedSubtypeCount: null,
+      subclasses: [clsWindow, clsCanvasElement, clsWorker],
+      subtypes: [clsWindow, clsCanvasElement, clsWorker]);
+
+  // Created by 'html.window'.
+  check(clsWindow,
+      isDirectlyInstantiated: false,
+      isAbstractlyInstantiated: true,
+      isIndirectlyInstantiated: false,
+      hasStrictSubtype: false,
+      hasOnlySubclasses: true,
+      lubOfInstantiatedSubclasses: clsWindow,
+      lubOfInstantiatedSubtypes: clsWindow,
+      instantiatedSubclassCount: 0,
+      instantiatedSubtypeCount: 0);
+
+  // Implemented by 'Worker'.
+  check(clsAbstractWorker,
+      isDirectlyInstantiated: false,
+      isAbstractlyInstantiated: false,
+      isIndirectlyInstantiated: false,
+      hasStrictSubtype: true,
+      hasOnlySubclasses: false,
+      lubOfInstantiatedSubclasses: null,
+      lubOfInstantiatedSubtypes: clsWorker,
+      instantiatedSubclassCount: 0,
+      instantiatedSubtypeCount: 1,
+      subtypes: [clsWorker]);
+
+  // Created by 'new html.Worker'.
+  check(clsWorker,
+      isDirectlyInstantiated: false,
+      isAbstractlyInstantiated: true,
+      isIndirectlyInstantiated: false,
+      hasStrictSubtype: false,
+      hasOnlySubclasses: true,
+      lubOfInstantiatedSubclasses: clsWorker,
+      lubOfInstantiatedSubtypes: clsWorker,
+      instantiatedSubclassCount: 0,
+      instantiatedSubtypeCount: 0);
+
+  // Created by 'new html.CanvasElement'.
+  check(clsCanvasElement,
+      isDirectlyInstantiated: false,
+      isAbstractlyInstantiated: true,
+      isIndirectlyInstantiated: false,
+      hasStrictSubtype: false,
+      hasOnlySubclasses: true,
+      lubOfInstantiatedSubclasses: clsCanvasElement,
+      lubOfInstantiatedSubtypes: clsCanvasElement,
+      instantiatedSubclassCount: 0,
+      instantiatedSubtypeCount: 0);
+
+  // Implemented by CanvasRenderingContext2D and RenderingContext.
+  check(clsCanvasRenderingContext,
+      isDirectlyInstantiated: false,
+      isAbstractlyInstantiated: false,
+      isIndirectlyInstantiated: false,
+      hasStrictSubtype: true,
+      hasOnlySubclasses: false,
+      lubOfInstantiatedSubclasses: null,
+      lubOfInstantiatedSubtypes: clsCanvasRenderingContext,
+      instantiatedSubclassCount: 0,
+      instantiatedSubtypeCount: 2,
+      subtypes: [clsCanvasRenderingContext2D]);
+
+  // Created by 'html.CanvasElement.getContext'.
+  check(clsCanvasRenderingContext2D,
+      isDirectlyInstantiated: false,
+      isAbstractlyInstantiated: true,
+      isIndirectlyInstantiated: false,
+      hasStrictSubtype: false,
+      hasOnlySubclasses: true,
+      lubOfInstantiatedSubclasses: clsCanvasRenderingContext2D,
+      lubOfInstantiatedSubtypes: clsCanvasRenderingContext2D,
+      instantiatedSubclassCount: 0,
+      instantiatedSubtypeCount: 0);
+}
diff --git a/tests/kernel/kernel.status b/tests/kernel/kernel.status
new file mode 100644
index 0000000..c05aa3d
--- /dev/null
+++ b/tests/kernel/kernel.status
@@ -0,0 +1,19 @@
+# Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+# for details. All rights reserved. Use of this source code is governed by a
+# BSD-style license that can be found in the LICENSE file.
+
+unsorted/invocation_errors_test: RuntimeError
+
+[ $compiler == dartk && $runtime == vm ]
+
+[ $compiler == dartkp && $runtime == dart_precompiled ]
+
+[ $compiler == dart2analyzer && $runtime == none ]
+unsorted/invocation_errors_test: StaticWarning
+unsorted/super_mixin_test: CompileTimeError
+
+[ $compiler == dart2js ]
+unsorted/invocation_errors_test: Pass
+unsorted/super_initializer_test: Skip
+unsorted/super_mixin_test: CompileTimeError
+unsorted/loop_test: Skip
diff --git a/tests/kernel/unsorted/as_is_test.dart b/tests/kernel/unsorted/as_is_test.dart
new file mode 100644
index 0000000..846fdf1
--- /dev/null
+++ b/tests/kernel/unsorted/as_is_test.dart
@@ -0,0 +1,28 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of class literals, is, and as expressions.
+
+import 'package:expect/expect.dart';
+
+class C {}
+
+class D extends C {}
+
+test0() => C;
+test1() => D;
+
+main() {
+  var c = new C();
+  var d = new D();
+  Expect.isTrue(test0() == C);
+  Expect.isTrue(test1() == D);
+  Expect.isTrue(c is C);
+  Expect.isTrue(c is! D);
+  Expect.isTrue(d is C);
+  Expect.isTrue(d is D);
+  Expect.isTrue(c as C == c);
+  Expect.isTrue(d as C == d);
+  Expect.isTrue(d as D == d);
+}
diff --git a/tests/kernel/unsorted/block_scope_test.dart b/tests/kernel/unsorted/block_scope_test.dart
new file mode 100644
index 0000000..36e3d66
--- /dev/null
+++ b/tests/kernel/unsorted/block_scope_test.dart
@@ -0,0 +1,60 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of block scoping.
+
+import 'package:expect/expect.dart';
+
+bool oracle() => true;
+
+test0() {
+  var x = 'outer', y = x;
+  Expect.isTrue(x == 'outer');
+  Expect.isTrue(y == 'outer');
+  { var x = 'inner';
+    Expect.isTrue(x == 'inner');
+    Expect.isTrue(y == 'outer');
+  }
+  Expect.isTrue(x == 'outer');
+  Expect.isTrue(y == 'outer');
+
+  if (oracle()) {
+    var y = 'inner';
+    Expect.isTrue(x == 'outer');
+    Expect.isTrue(y == 'inner');
+  } else {
+    Expect.isTrue(false);
+  }
+  Expect.isTrue(x == 'outer');
+  Expect.isTrue(y == 'outer');
+}
+
+var x = 'toplevel';
+
+test1() {
+  var y = 'outer';
+  Expect.isTrue(x == 'toplevel');
+  Expect.isTrue(y == 'outer');
+  { var x = 'inner';
+    Expect.isTrue(x == 'inner');
+    Expect.isTrue(y == 'outer');
+  }
+  Expect.isTrue(x == 'toplevel');
+  Expect.isTrue(y == 'outer');
+
+  if (oracle()) {
+    var y = 'inner';
+    Expect.isTrue(x == 'toplevel');
+    Expect.isTrue(y == 'inner');
+  } else {
+    Expect.isTrue(false);
+  }
+  Expect.isTrue(x == 'toplevel');
+  Expect.isTrue(y == 'outer');
+}
+
+main() {
+  test0();
+  test1();
+}
diff --git a/tests/kernel/unsorted/breakable_statement_test.dart b/tests/kernel/unsorted/breakable_statement_test.dart
new file mode 100644
index 0000000..22263cc
--- /dev/null
+++ b/tests/kernel/unsorted/breakable_statement_test.dart
@@ -0,0 +1,81 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+testFor() {
+  int current;
+  for (int i = 0; i < 100; i++) {
+    current = i;
+    if (i > 41) break;
+  }
+  Expect.isTrue(current == 42);
+}
+
+testWhile() {
+  int i = 0;
+  while (i < 100) {
+    if (++i > 41) break;
+  }
+  Expect.isTrue(i == 42);
+}
+
+testDoWhile() {
+  int i = 0;
+  do {
+    if (++i > 41) break;
+  } while (i < 100);
+  Expect.isTrue(i == 42);
+}
+
+testLabledBreakOutermost() {
+  int i = 0;
+  outer: {
+    middle: {
+      while (i < 100) {
+        if (++i > 41) break outer;
+      }
+      i++;
+    }
+    i++;
+  }
+  Expect.isTrue(i == 42);
+}
+
+testLabledBreakMiddle() {
+  int i = 0;
+  outer: {
+    middle: {
+      while (i < 100) {
+        if (++i > 41) break middle;
+      }
+      i++;
+    }
+    i++;
+  }
+  Expect.isTrue(i == 43);
+}
+
+testLabledBreakInner() {
+  int i = 0;
+  outer: {
+    middle: {
+      while (i < 100) {
+        if (++i > 41) break;
+      }
+      i++;
+    }
+    i++;
+  }
+  Expect.isTrue(i == 44);
+}
+
+main() {
+  testFor();
+  testWhile();
+  testDoWhile();
+  testLabledBreakOutermost();
+  testLabledBreakMiddle();
+  testLabledBreakInner();
+}
diff --git a/tests/kernel/unsorted/closures_regression_test.dart b/tests/kernel/unsorted/closures_regression_test.dart
new file mode 100644
index 0000000..51c18d3
--- /dev/null
+++ b/tests/kernel/unsorted/closures_regression_test.dart
@@ -0,0 +1,22 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+f(fun) => fun();
+class A {
+  identity(arg) {
+    return f(() {
+      print(this);
+      return f(() {
+        return this;
+      });
+    });
+  }
+}
+
+main() {
+  var a = new A();
+  Expect.isTrue(identical(a.identity(42), a));
+}
diff --git a/tests/kernel/unsorted/closures_test.dart b/tests/kernel/unsorted/closures_test.dart
new file mode 100644
index 0000000..df3430f
--- /dev/null
+++ b/tests/kernel/unsorted/closures_test.dart
@@ -0,0 +1,65 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class Base {
+  int constant1000() => 1000;
+}
+
+class Foo extends Base {
+  final int base;
+  Foo(this.base);
+
+  nestedAdderFunction(a, b, c, d, e) {
+    var result = a + b;
+    return () {
+      var result2 = c + d;
+      return () {
+        return base + result + result2 + e;
+      };
+    };
+  }
+
+  nestedAdderFunction2(a, b, c, d, e) {
+    var result = a + b;
+    return () {
+      var base = super.constant1000;
+      var result2 = c + d;
+      return () {
+        return base() + result + result2 + e;
+      };
+    };
+  }
+}
+
+nestedAdderFunction(a, b, c, d, e) {
+  var result = a + b;
+  return () {
+    var result2 = c + d;
+    return () {
+      return result + result2 + e;
+    };
+  };
+}
+
+main() {
+  Expect.isTrue(nestedAdderFunction(1, 2, 3, 4, 5)()() == 15);
+
+  var foo = new Foo(100);
+  Expect.isTrue(foo.nestedAdderFunction(1, 2, 3, 4, 5)()() == 115);
+  Expect.isTrue(foo.nestedAdderFunction2(1, 2, 3, 4, 5)()() == 1015);
+
+  var funs = [];
+  for (int i = 0; i < 3; i++) {
+    funs.add(() => i);
+  }
+  Expect.isTrue((funs[0]() + funs[1]() + funs[2]()) == 3);
+
+  var funs2 = [];
+  for (var i in [0, 1, 2]) {
+    funs2.add(() => i);
+  }
+  Expect.isTrue((funs2[0]() + funs2[1]() + funs2[2]()) == 3);
+}
diff --git a/tests/kernel/unsorted/conditional_test.dart b/tests/kernel/unsorted/conditional_test.dart
new file mode 100644
index 0000000..3bf30a3
--- /dev/null
+++ b/tests/kernel/unsorted/conditional_test.dart
@@ -0,0 +1,142 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of conditional expressions and statements and negation.
+
+import 'package:expect/expect.dart';
+
+mkTrue() => true;
+mkFalse() => false;
+
+check(b) {
+  Expect.isTrue(b);
+  return b;
+}
+
+main() {
+  // Check that ?: gets the right answer.
+  Expect.isTrue((mkTrue() ? 0 : 1) == 0);
+  Expect.isTrue((mkFalse() ? 0 : 1) == 1);
+  // Check that it doesn't evaluate all subexpressions.
+  mkTrue() ? Expect.isTrue(true) : Expect.isTrue(false);
+  mkFalse() ? Expect.isTrue(false) : Expect.isTrue(true);
+
+  // Check that && and || get the right answers.
+  Expect.isTrue(mkTrue() && mkTrue());
+  Expect.isTrue(!(mkTrue() && mkFalse()));
+  Expect.isTrue(!(mkFalse() && mkTrue()));
+  Expect.isTrue(!(mkFalse() && mkFalse()));
+  Expect.isTrue(mkTrue() || mkTrue());
+  Expect.isTrue(mkTrue() || mkFalse());
+  Expect.isTrue(mkFalse() || mkTrue());
+  Expect.isTrue(!(mkFalse() || mkFalse()));
+
+  // Check that they don't evaluate both subexpressions.
+  mkTrue() && check(true);
+  mkFalse() && check(false);
+  mkTrue() || check(true);
+  mkFalse() || check(true);
+
+  // Check that if works.
+  if (mkTrue()) {
+    Expect.isTrue(true);
+  } else {
+    Expect.isTrue(false);
+  }
+  if (mkFalse()) {
+    Expect.isTrue(false);
+  } else {
+    Expect.isTrue(true);
+  }
+  if (!mkTrue()) {
+    Expect.isTrue(false);
+  } else {
+    Expect.isTrue(true);
+  }
+  if (!mkFalse()) {
+    Expect.isTrue(true);
+  } else {
+    Expect.isTrue(false);
+  }
+
+  // Check that ?:, &&, and || work for control flow.
+  if (mkTrue() ? mkTrue() : mkFalse()) {
+    Expect.isTrue(true);
+  } else {
+    Expect.isTrue(false);
+  }
+  if (mkTrue() ? mkFalse() : mkTrue()) {
+    Expect.isTrue(false);
+  } else {
+    Expect.isTrue(true);
+  }
+  if (mkFalse() ? mkTrue() : mkFalse()) {
+    Expect.isTrue(false);
+  } else {
+    Expect.isTrue(true);
+  }
+  if (mkFalse() ? mkFalse() : mkTrue()) {
+    Expect.isTrue(true);
+  } else {
+    Expect.isTrue(false);
+  }
+  if (mkTrue() && mkTrue()) {
+    Expect.isTrue(true);
+  } else {
+    Expect.isTrue(false);
+  }
+  if (mkTrue() && mkFalse()) {
+    Expect.isTrue(false);
+  } else {
+    Expect.isTrue(true);
+  }
+  if (mkFalse() && mkTrue()) {
+    Expect.isTrue(false);
+  } else {
+    Expect.isTrue(true);
+  }
+  if (mkFalse() && mkFalse()) {
+    Expect.isTrue(false);
+  } else {
+    Expect.isTrue(true);
+  }
+  if (mkTrue() || mkTrue()) {
+    Expect.isTrue(true);
+  } else {
+    Expect.isTrue(false);
+  }
+  if (mkTrue() || mkFalse()) {
+    Expect.isTrue(true);
+  } else {
+    Expect.isTrue(false);
+  }
+  if (mkFalse() || mkTrue()) {
+    Expect.isTrue(true);
+  } else {
+    Expect.isTrue(false);
+  }
+  if (mkFalse() || mkFalse()) {
+    Expect.isTrue(false);
+  } else {
+    Expect.isTrue(true);
+  }
+
+  // Test empty else branches.
+  if (mkTrue()) {
+    Expect.isTrue(true);
+  }
+  if (mkFalse()) {
+    Expect.isTrue(false);
+  }
+
+  var x = 0;
+  if (mkTrue()) {
+    x = 1;
+  }
+  Expect.isTrue(x == 1);
+  if (mkFalse()) {
+    x = 2;
+  }
+  Expect.isTrue(x == 1);
+}
diff --git a/tests/kernel/unsorted/constant_evaluator_regression_test.dart b/tests/kernel/unsorted/constant_evaluator_regression_test.dart
new file mode 100644
index 0000000..e5c79c6
--- /dev/null
+++ b/tests/kernel/unsorted/constant_evaluator_regression_test.dart
@@ -0,0 +1,11 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+const X = const bool.fromEnvironment('foobar');
+
+main() {
+  Expect.isTrue(X == false);
+}
diff --git a/tests/kernel/unsorted/constant_expressions_test.dart b/tests/kernel/unsorted/constant_expressions_test.dart
new file mode 100644
index 0000000..0d5a3ec
--- /dev/null
+++ b/tests/kernel/unsorted/constant_expressions_test.dart
@@ -0,0 +1,100 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+const int42 = 40 + 2;
+const stringAB = 'a' + 'b';
+const stringAB2 = 'a' + 'b';
+const list123 = const [1, 2, 3];
+const mapABC = const {'a' : 'b', 'b': 'c'};
+
+const boxInt42 = const Box(int42);
+const boxStringAB = const Box(stringAB);
+
+class Box {
+  final value;
+  const Box(this.value);
+}
+
+returnPositional([a = const Box('posi' + 'tional')]) => a;
+
+returnNamed({a: const Box('nam' + 'ed')}) => a;
+
+returnSwitchCasedValue(value) {
+  switch (value) {
+    case const Box(42): return 42;
+    case const Box('abc'): return 'abc';
+    case const Box(const Box('abc')): return const Box('abc');
+    default: return 'default';
+  }
+}
+
+testConstantExpressions() {
+  Expect.isTrue(identical(const Box(40 + 2), const Box(40 + 2)));
+  Expect.isTrue(identical(const Box('a' + 'b'), const Box('ab')));
+  Expect.isTrue(identical(const Box(const Box(40 + 2)),
+                          const Box(const Box(42))));
+  Expect.isTrue(identical(const Box(const Box('a' + 'b')),
+                          const Box(const Box('ab'))));
+}
+
+testConstantFieldValues() {
+  Expect.isTrue(identical(42, int42));
+  Expect.isTrue(identical(stringAB, stringAB2));
+  Expect.isTrue(identical(const Box(42), boxInt42));
+  Expect.isTrue(identical(const Box('ab'), boxStringAB));
+}
+
+testConstantFunctionParameters() {
+  Expect.isTrue(identical(const Box('positional'), returnPositional()));
+  Expect.isTrue(identical(const Box('named'), returnNamed()));
+  Expect.isTrue(identical(const Box('abc'),
+                          returnPositional(const Box('abc'))));
+  Expect.isTrue(identical(const Box('def'),
+                          returnNamed(a: const Box('def'))));
+}
+
+testConstantSwitchExpressions() {
+  Expect.isTrue(returnSwitchCasedValue(const Box(42)) == 42);
+  Expect.isTrue(returnSwitchCasedValue(const Box('abc')) == 'abc');
+  Expect.isTrue(returnSwitchCasedValue(const Box(const Box('abc')))
+                == const Box('abc'));
+  Expect.isTrue(returnSwitchCasedValue(const Box('go-to-default'))
+                == 'default');
+}
+
+testConstantLocalVariables() {
+  const a = 'a';
+  const b = a + 'b';
+  const c = b + 'c';
+  const box = const Box(c);
+  Expect.isTrue(identical(const Box('abc'), box));
+}
+
+testComplextConstLiterals() {
+  Expect.isTrue(identical(const [1, 2, 3], const [1, 2, 3]));
+  Expect.isTrue(identical(const [1, 2, 3], list123));
+  Expect.isTrue(identical(const {'a': 'b', 'b': 'c'}, const {'a': 'b', 'b': 'c'}));
+  Expect.isTrue(identical(const {'a': 'b', 'b': 'c'}, mapABC));
+
+  Expect.isTrue(mapABC['a'] == 'b');
+  Expect.isTrue(mapABC['b'] == 'c');
+  Expect.isTrue(mapABC.length == 2);
+
+  Expect.isTrue(list123[0] == 1);
+  Expect.isTrue(list123[1] == 2);
+  Expect.isTrue(list123[2] == 3);
+  Expect.isTrue(list123.length == 3);
+}
+
+main() {
+  testConstantExpressions();
+  testConstantFieldValues();
+  testConstantFunctionParameters();
+  testConstantSwitchExpressions();
+  testComplextConstLiterals();
+  testConstantExpressions();
+  testConstantLocalVariables();
+}
diff --git a/tests/kernel/unsorted/factory_regression_test.dart b/tests/kernel/unsorted/factory_regression_test.dart
new file mode 100644
index 0000000..efccf81
--- /dev/null
+++ b/tests/kernel/unsorted/factory_regression_test.dart
@@ -0,0 +1,23 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'dart:typed_data';
+
+import 'package:expect/expect.dart';
+
+var list = [1, 2, 3];
+
+class Foo {
+  final value;
+  Foo(this.value) {}
+
+  factory Foo.fac(value) {
+    return new Foo(value);
+  }
+}
+
+main() {
+  Expect.isTrue(new Uint8List.fromList(list)[1] == 2);
+  Expect.isTrue(new Foo.fac(10).value == 10);
+}
diff --git a/tests/kernel/unsorted/field_dispatcher_test.dart b/tests/kernel/unsorted/field_dispatcher_test.dart
new file mode 100644
index 0000000..cddba91
--- /dev/null
+++ b/tests/kernel/unsorted/field_dispatcher_test.dart
@@ -0,0 +1,37 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class A {
+  Function fun;
+  A(this.fun);
+}
+
+globalFunctionPositional(int a, [int b = 42]) => a + b;
+
+globalFunctionNamed(int a, {int b: 42}) => a + b;
+
+class Foo {
+  int base;
+
+  Foo(this.base);
+
+  methodFunctionPositional(int a, [int b = 42]) => base + a + b;
+
+  methodFunctionNamed(int a, {int b: 42}) => base + a + b;
+}
+
+main() {
+  Expect.isTrue(new A(globalFunctionPositional).fun(1, 2) == 3);
+  Expect.isTrue(new A(globalFunctionPositional).fun(1) == 43);
+  Expect.isTrue(new A(globalFunctionNamed).fun(1, b: 2) == 3);
+  Expect.isTrue(new A(globalFunctionNamed).fun(1) == 43);
+
+  var foo = new Foo(100);
+  Expect.isTrue(new A(foo.methodFunctionPositional).fun(1, 2) == 103);
+  Expect.isTrue(new A(foo.methodFunctionPositional).fun(1) == 143);
+  Expect.isTrue(new A(foo.methodFunctionNamed).fun(1, b: 2) == 103);
+  Expect.isTrue(new A(foo.methodFunctionNamed).fun(1) == 143);
+}
diff --git a/tests/kernel/unsorted/finally_contexts_test.dart b/tests/kernel/unsorted/finally_contexts_test.dart
new file mode 100644
index 0000000..a392c65
--- /dev/null
+++ b/tests/kernel/unsorted/finally_contexts_test.dart
@@ -0,0 +1,47 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+// Test that the context depth is correct in the presence of control flow,
+// specifically branching and joining in the presence of break.  The
+// implementation uses the context depth after the else block of an if/then/else
+// as the context depth at the join point.  This test has an extra context
+// allocated in the (untaken) else branch so it tests that compiling the
+// (untaken) break properly tracks the context depth.
+
+test(list) {
+  // The loops force creation of a new context, otherwise context allocated
+  // variables might be hoisted to an outer context.
+  do {
+    if (list.length > 1) {
+      do {
+        var sum = 0;
+        addem() {
+          for (var x in list) sum += x;
+        }
+        addem();
+        Expect.isTrue(sum == 15);
+        L: if (sum != 15) {
+          // Unreachable.
+          do {
+            var product = 1;
+            multiplyem() {
+              for (var x in list) product *= x;
+            }
+            multiplyem();
+            Expect.isTrue(false);
+            break L;
+          } while (false);
+        }
+      } while (false);
+    }
+  } while (false);
+  Expect.isTrue(list.length == 5);
+}
+
+
+main() {
+  test([1, 2, 3, 4, 5]);
+}
diff --git a/tests/kernel/unsorted/for_in_loop_test.dart b/tests/kernel/unsorted/for_in_loop_test.dart
new file mode 100644
index 0000000..635d72f
--- /dev/null
+++ b/tests/kernel/unsorted/for_in_loop_test.dart
@@ -0,0 +1,38 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of for-in loops and list literals.
+
+import 'package:expect/expect.dart';
+
+fact4() {
+  var f = 1;
+  for (var n in [1, 2, 3, 4]) {
+    f *= n;
+  }
+  return f;
+}
+
+fact5() {
+  var f = 1, n;
+  for (n in [1, 2, 3, 4, 5]) {
+    f *= n;
+  }
+  return f;
+}
+
+var global;
+fact6() {
+  var f = 1;
+  for (global in [1, 2, 3, 4, 5, 6]) {
+    f *= global;
+  }
+  return f;
+}
+
+main() {
+  Expect.isTrue(fact4() == 24);
+  Expect.isTrue(fact5() == 120);
+  Expect.isTrue(fact6() == 720);
+}
diff --git a/tests/kernel/unsorted/getters_and_setters_test.dart b/tests/kernel/unsorted/getters_and_setters_test.dart
new file mode 100644
index 0000000..816a0e0
--- /dev/null
+++ b/tests/kernel/unsorted/getters_and_setters_test.dart
@@ -0,0 +1,32 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+var field;
+
+get getField {
+  print('B.getField');
+  return field;
+}
+
+set setField(value) {
+  print('B.setField');
+  field = value;
+  return null;
+}
+
+main() {
+  var result;
+
+  result = (field = 42);
+  Expect.isTrue(result == 42);
+  Expect.isTrue(field == 42);
+  Expect.isTrue(getField == 42);
+
+  result = (setField = 99);
+  Expect.isTrue(result == 99);
+  Expect.isTrue(field == 99);
+  Expect.isTrue(getField == 99);
+}
diff --git a/tests/kernel/unsorted/global_field_initializer_test.dart b/tests/kernel/unsorted/global_field_initializer_test.dart
new file mode 100644
index 0000000..a19fe34
--- /dev/null
+++ b/tests/kernel/unsorted/global_field_initializer_test.dart
@@ -0,0 +1,37 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+var intField = 1;
+var doubleField = 3.1415;
+var stringField = "hello";
+var nullField = null;
+var nullField2;
+var composed = "hello" + " " + "world";
+
+class A {
+  static var intField = 1;
+  static var doubleField = 3.1415;
+  static var stringField = "hello";
+  static var nullField = null;
+  static var nullField2;
+  static var composed = "hello" + " " + "world";
+}
+
+main() {
+  Expect.isTrue(intField == 1);
+  Expect.isTrue(doubleField == 3.1415);
+  Expect.isTrue(stringField == "hello");
+  Expect.isTrue(nullField == null);
+  Expect.isTrue(nullField2 == null);
+  Expect.isTrue(composed == "hello world");
+
+  Expect.isTrue(A.intField == 1);
+  Expect.isTrue(A.doubleField == 3.1415);
+  Expect.isTrue(A.stringField == "hello");
+  Expect.isTrue(A.nullField == null);
+  Expect.isTrue(A.nullField2 == null);
+  Expect.isTrue(A.composed == "hello world");
+}
diff --git a/tests/kernel/unsorted/global_function_test.dart b/tests/kernel/unsorted/global_function_test.dart
new file mode 100644
index 0000000..925ce80
--- /dev/null
+++ b/tests/kernel/unsorted/global_function_test.dart
@@ -0,0 +1,35 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+main() {
+  foo(1, 2);
+  print('---');
+  foo(1, 2, d: 12);
+  print('---');
+  foo(1, 2, c: 11, e: 13);
+
+  print('=====');
+
+  bar(1, 2);
+  print('---');
+  bar(1, 2, 3);
+  print('---');
+  bar(1, 2, 3, 4);
+}
+
+foo(a, b, {c, d, e}) {
+  print(a);
+  print(b);
+  print(c);
+  print(d);
+  print(e);
+}
+
+bar(a, b, [c, d]) {
+  print(a);
+  print(b);
+  print(c);
+  print(d);
+}
+
diff --git a/tests/kernel/unsorted/instance_getters_and_setters_test.dart b/tests/kernel/unsorted/instance_getters_and_setters_test.dart
new file mode 100644
index 0000000..4430a62
--- /dev/null
+++ b/tests/kernel/unsorted/instance_getters_and_setters_test.dart
@@ -0,0 +1,36 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class A {
+  var field;
+
+  get getField {
+    return field;
+  }
+
+  set setField(value) {
+    field = value;
+    return null;
+  }
+}
+
+main() {
+  var result;
+  var a = new A();
+
+  Expect.isTrue(a.field == null);
+  Expect.isTrue(a.getField == null);
+
+  result = (a.field = 42);
+  Expect.isTrue(result == 42);
+  Expect.isTrue(a.field == 42);
+  Expect.isTrue(a.getField == 42);
+
+  result = (a.setField = 99);
+  Expect.isTrue(result == 99);
+  Expect.isTrue(a.field == 99);
+  Expect.isTrue(a.getField == 99);
+}
diff --git a/tests/kernel/unsorted/invocation_errors_test.dart b/tests/kernel/unsorted/invocation_errors_test.dart
new file mode 100644
index 0000000..9c9c516
--- /dev/null
+++ b/tests/kernel/unsorted/invocation_errors_test.dart
@@ -0,0 +1,16 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Erroneous cases of invocations.
+
+import 'package:expect/expect.dart';
+
+test0(x) {
+  print('test0');
+}
+
+main() {
+  // Incorrect number of arguments, should be NoSuchMethodError but crashes.
+  test0(0, 1);
+}
diff --git a/tests/kernel/unsorted/invocation_test.dart b/tests/kernel/unsorted/invocation_test.dart
new file mode 100644
index 0000000..dbf862c
--- /dev/null
+++ b/tests/kernel/unsorted/invocation_test.dart
@@ -0,0 +1,40 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of invocations.
+
+import 'package:expect/expect.dart';
+
+test0(x) {
+  Expect.isTrue(x == 'argument0');
+  return 'return0';
+}
+
+class C0 {
+  static test1(x) {
+    Expect.isTrue(x == 'argument1');
+    return 'return1';
+  }
+}
+
+class C1 {
+  test2(x) {
+    Expect.isTrue(x == 'argument2');
+    return 'return2';
+  }
+}
+
+class C2 {
+  C2.test3(x) {
+    Expect.isTrue(x == 'argument3');
+  }
+}
+
+main() {
+  Expect.isTrue(test0('argument0') == 'return0');
+  Expect.isTrue(C0.test1('argument1') == 'return1');
+  Expect.isTrue(new C1().test2('argument2') == 'return2');
+  var c = new C2.test3('argument3');
+  Expect.isTrue(c is C2);
+}
diff --git a/tests/kernel/unsorted/klass_field_initializer_test.dart b/tests/kernel/unsorted/klass_field_initializer_test.dart
new file mode 100644
index 0000000..1d28341
--- /dev/null
+++ b/tests/kernel/unsorted/klass_field_initializer_test.dart
@@ -0,0 +1,36 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class A {
+  var intField = 1;
+  var doubleField = 3.1415;
+  var stringField = "hello";
+  var o;
+
+  A(this.o);
+}
+
+class B extends A {
+  var nullField = null;
+  var nullField2;
+
+  var n;
+  var m;
+
+  B(this.n, o) : super(o), m = "m";
+}
+
+main() {
+  var o = new B("n", "o");
+  Expect.isTrue(o.intField == 1);
+  Expect.isTrue(o.doubleField == 3.1415);
+  Expect.isTrue(o.stringField == "hello");
+  Expect.isTrue(o.nullField == null);
+  Expect.isTrue(o.nullField2 == null);
+  Expect.isTrue(o.m == 'm');
+  Expect.isTrue(o.n == 'n');
+  Expect.isTrue(o.o == 'o');
+}
diff --git a/tests/kernel/unsorted/klass_test.dart b/tests/kernel/unsorted/klass_test.dart
new file mode 100644
index 0000000..2745882
--- /dev/null
+++ b/tests/kernel/unsorted/klass_test.dart
@@ -0,0 +1,52 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+class A {
+  A() {
+    print("A");
+  }
+
+  hello() {
+    print("A.hello()");
+  }
+
+  hello1(a) {
+    print("A.hello1()");
+    print(a);
+  }
+
+  foo(a, [b]) {
+    print("A.foo()");
+    print(a);
+    print(b);
+  }
+
+  bar(a, {b}) {
+    print("A.bar()");
+    print(a);
+    print(b);
+  }
+}
+
+main() {
+  print("before constructor");
+  var a = new A();
+  print("============");
+  a.hello();
+  print('-----(obj):');
+  print(a);
+  print('-----');
+  a.hello1(1);
+  print('-----');
+  a.foo(1);
+  print('-----');
+  a.foo(1, 2);
+  print('-----');
+  print("============");
+  a.bar(1);
+  print('-----');
+  a.bar(1, b: 2);
+  print("============");
+}
+
diff --git a/tests/kernel/unsorted/let_test.dart b/tests/kernel/unsorted/let_test.dart
new file mode 100644
index 0000000..7687966
--- /dev/null
+++ b/tests/kernel/unsorted/let_test.dart
@@ -0,0 +1,10 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+main() {
+  var a = [1];
+  Expect.isTrue((a..add(42))[1] == 42);
+}
diff --git a/tests/kernel/unsorted/load_store_test.dart b/tests/kernel/unsorted/load_store_test.dart
new file mode 100644
index 0000000..d19f87b
--- /dev/null
+++ b/tests/kernel/unsorted/load_store_test.dart
@@ -0,0 +1,64 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of reading and writing to variables.
+
+import 'package:expect/expect.dart';
+
+test0() {
+  var x0 = 0, x1;
+  Expect.isTrue(x0 == 0);
+  Expect.isTrue(x1 == null);
+  x0 = 1;
+  Expect.isTrue(x0 == 1);
+  Expect.isTrue((x0 = 2) == 2);
+  Expect.isTrue(x0 == 2);
+}
+
+var x2 = 0, x3;
+
+test1() {
+  Expect.isTrue(x2 == 0);
+  Expect.isTrue(x3 == null);
+  x2 = 1;
+  Expect.isTrue(x2 == 1);
+  Expect.isTrue((x2 = 2) == 2);
+  Expect.isTrue(x2 == 2);
+}
+
+class C {
+  static var x4 = 0;
+  static var x5;
+}
+
+test3() {
+  Expect.isTrue(C.x4 == 0);
+  Expect.isTrue(C.x5 == null);
+  C.x4 = 1;
+  Expect.isTrue(C.x4 == 1);
+  Expect.isTrue((C.x4 = 2) == 2);
+  Expect.isTrue(C.x4 == 2);
+}
+
+class D {
+  var x6 = 0;
+  var x7;
+}
+
+test4() {
+  var d = new D();
+  Expect.isTrue(d.x6 == 0);
+  Expect.isTrue(d.x7 == null);
+  d.x6 = 1;
+  Expect.isTrue(d.x6 == 1);
+  Expect.isTrue((d.x6 = 2) == 2);
+  Expect.isTrue(d.x6 == 2);
+}
+
+main() {
+  test0();
+  test1();
+  test3();
+  test4();
+}
diff --git a/tests/kernel/unsorted/local_function_test.dart b/tests/kernel/unsorted/local_function_test.dart
new file mode 100644
index 0000000..536c96a
--- /dev/null
+++ b/tests/kernel/unsorted/local_function_test.dart
@@ -0,0 +1,25 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of function expressions and function statements.
+
+import 'package:expect/expect.dart';
+
+main() {
+  var even;
+  odd(n) => n > 0 && even(n - 1);
+  even = (n) => n == 0 || odd(n - 1);
+
+  Expect.isTrue(even(0));
+  Expect.isTrue(!odd(0));
+
+  Expect.isTrue(odd(1));
+  Expect.isTrue(!even(1));
+
+  Expect.isTrue(even(42));
+  Expect.isTrue(!odd(42));
+
+  Expect.isTrue(odd(101));
+  Expect.isTrue(!even(101));
+}
diff --git a/tests/kernel/unsorted/loop_test.dart b/tests/kernel/unsorted/loop_test.dart
new file mode 100644
index 0000000..3885138
--- /dev/null
+++ b/tests/kernel/unsorted/loop_test.dart
@@ -0,0 +1,91 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of loops.
+
+import 'package:expect/expect.dart';
+
+fact(n) {
+  var f = 1;
+  while (n > 0) {
+    f *= n;
+    --n;
+  }
+  return f;
+}
+
+fib(n) {
+  if (n == 0) return 0;
+  var previous = 0, current = 1;
+  while (n > 1) {
+    var temp = current;
+    current += previous;
+    previous = temp;
+    --n;
+  }
+  return current;
+}
+
+mkTrue() => true;
+mkFalse() => false;
+
+check(b) {
+  Expect.isTrue(b);
+  return b;
+}
+
+test0() {
+  while (mkTrue()) {
+    Expect.isTrue(true);
+    return;
+  }
+  Expect.isTrue(false);
+}
+
+test1() {
+  while (mkFalse()) {
+    Expect.isTrue(false);
+  }
+  Expect.isTrue(true);
+}
+
+test2() {
+  do {
+    Expect.isTrue(true);
+  } while (mkFalse());
+  Expect.isTrue(true);
+}
+
+test3() {
+  do {
+    Expect.isTrue(true);
+    return;
+  } while (check(false));
+  Expect.isTrue(false);
+}
+
+main() {
+  Expect.isTrue(fact(0) == 1);
+  Expect.isTrue(fact(1) == 1);
+  Expect.isTrue(fact(5) == 120);
+  Expect.isTrue(fact(42) ==
+      1405006117752879898543142606244511569936384000000000);
+  Expect.isTrue(fact(3.14159) == 1.0874982674320444);
+
+  Expect.isTrue(fib(0) == 0);
+  Expect.isTrue(fib(1) == 1);
+  Expect.isTrue(fib(2) == 1);
+  Expect.isTrue(fib(3) == 2);
+  Expect.isTrue(fib(4) == 3);
+  Expect.isTrue(fib(5) == 5);
+  Expect.isTrue(fib(6) == 8);
+  Expect.isTrue(fib(7) == 13);
+  Expect.isTrue(fib(42) == 267914296);
+  Expect.isTrue(fib(3.14159) == 3);
+
+  test0();
+  test1();
+  test2();
+  test3();
+}
diff --git a/tests/kernel/unsorted/mapliteral_test.dart b/tests/kernel/unsorted/mapliteral_test.dart
new file mode 100644
index 0000000..146422d
--- /dev/null
+++ b/tests/kernel/unsorted/mapliteral_test.dart
@@ -0,0 +1,27 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+main() {
+  var map = {
+    'k1': 'v1',
+    'k2': 'v2',
+    1: 2,
+    1.5 : 1.2,
+    3: 3.14,
+  };
+
+  Expect.isTrue(map.length == 5);
+
+  map['foo'] = 'bar';
+
+  Expect.isTrue(map['k1'] == 'v1');
+  Expect.isTrue(map['k2'] == 'v2');
+  Expect.isTrue(map[1] == 2);
+  Expect.isTrue(map[1.5] == 1.2);
+  Expect.isTrue(map[3] == 3.14);
+  Expect.isTrue(map['foo'] == 'bar');
+  Expect.isTrue(map.length == 6);
+}
diff --git a/tests/kernel/unsorted/mixin_test.dart b/tests/kernel/unsorted/mixin_test.dart
new file mode 100644
index 0000000..c04a2f3
--- /dev/null
+++ b/tests/kernel/unsorted/mixin_test.dart
@@ -0,0 +1,64 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class Base {
+  baseFoo() {
+    print('Base.baseFoo()');
+    return 1;
+  }
+
+  foo() {
+    print('Base.foo()');
+    return 1;
+  }
+}
+
+class Mixin {
+  mixinFoo() {
+    print('Mixin.mixinFoo()');
+    return 2;
+  }
+
+  foo() {
+    print('Mixin.foo()');
+    return 2;
+  }
+}
+
+class Mixin2 {
+  mixin2Foo() {
+    print('Mixin2.mixin2Foo()');
+    return 3;
+  }
+
+  foo() {
+    print('Mixin2.foo()');
+    return 3;
+  }
+}
+
+class Sub extends Base with Mixin, Mixin2 {
+  subFoo() {
+    print('Sub.subFoo()');
+    return 4;
+  }
+
+  foo() {
+    print('Sub.foo()');
+    return 4;
+  }
+}
+
+main() {
+  var o = new Sub();
+
+  Expect.isTrue(o.baseFoo() == 1);
+  Expect.isTrue(o.mixinFoo() == 2);
+  Expect.isTrue(o.mixin2Foo() == 3);
+  Expect.isTrue(o.subFoo() == 4);
+  Expect.isTrue(o.foo() == 4);
+}
+
diff --git a/tests/kernel/unsorted/nsm_dispatcher_test.dart b/tests/kernel/unsorted/nsm_dispatcher_test.dart
new file mode 100644
index 0000000..f9cfe40
--- /dev/null
+++ b/tests/kernel/unsorted/nsm_dispatcher_test.dart
@@ -0,0 +1,32 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class A {
+  noSuchMethod(Invocation invocation) {
+    var s = '|${invocation.memberName}|';
+    for (var a in invocation.positionalArguments) {
+      s = '$s$a|';
+    }
+    invocation.namedArguments.forEach((Symbol k, v) {
+      s = '$s$k/$v|';
+    });
+    print(s);
+    return s;
+  }
+}
+
+main() {
+  var o = new A();
+  Expect.isTrue(o.fun() == '|Symbol("fun")|');
+  Expect.isTrue(o.fun(1) == '|Symbol("fun")|1|');
+  Expect.isTrue(o.fun(1, 2) == '|Symbol("fun")|1|2|');
+  Expect.isTrue(o.fun(1, b: 2) ==
+      '|Symbol("fun")|1|Symbol("b")/2|');
+  Expect.isTrue(o.fun(1, a: 1, b: 2) ==
+      '|Symbol("fun")|1|Symbol("a")/1|Symbol("b")/2|');
+  Expect.isTrue(o.fun(1, b: 2, a: 1) ==
+      '|Symbol("fun")|1|Symbol("a")/1|Symbol("b")/2|');
+}
diff --git a/tests/kernel/unsorted/nullable_operator_test.dart b/tests/kernel/unsorted/nullable_operator_test.dart
new file mode 100644
index 0000000..9bf1bcb7
--- /dev/null
+++ b/tests/kernel/unsorted/nullable_operator_test.dart
@@ -0,0 +1,13 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+mkOne() => 1;
+mkNull() => null;
+
+main() {
+  Expect.isTrue((mkOne() ?? 2) == 1);
+  Expect.isTrue((mkNull() ?? 2) == 2);
+}
diff --git a/tests/kernel/unsorted/rethrow_test.dart b/tests/kernel/unsorted/rethrow_test.dart
new file mode 100644
index 0000000..c8f31d1
--- /dev/null
+++ b/tests/kernel/unsorted/rethrow_test.dart
@@ -0,0 +1,67 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+testNormalRethrow() {
+  var x = 0;
+  try {
+    try {
+      throw x++;
+    } catch (e) {
+      Expect.isTrue(e == 0);
+      x++;
+      rethrow;
+    }
+  } catch (e) {
+    Expect.isTrue(e == 0);
+    x++;
+  }
+  Expect.isTrue(x == 3);
+}
+
+testNormalRethrow2() {
+  var x = 0;
+  try {
+    try {
+      throw x++;
+    } on int catch (e) {
+      Expect.isTrue(e == 0);
+      x++;
+      rethrow;
+    }
+  } catch (e) {
+    Expect.isTrue(e == 0);
+    x++;
+  }
+  Expect.isTrue(x == 3);
+}
+
+testRethrowWithinTryRethrow() {
+  var x = 0;
+  try {
+    try {
+      throw x++;
+    } on int catch (e) {
+      Expect.isTrue(e == 0);
+      x++;
+      try {
+        x++;
+        rethrow;
+      } finally {
+        x++;
+      }
+    }
+  } catch (e) {
+    Expect.isTrue(e == 0);
+    x++;
+  }
+  Expect.isTrue(x == 5);
+}
+
+main() {
+  testNormalRethrow();
+  testNormalRethrow2();
+  testRethrowWithinTryRethrow();
+}
diff --git a/tests/kernel/unsorted/return_test.dart b/tests/kernel/unsorted/return_test.dart
new file mode 100644
index 0000000..9bf60d2
--- /dev/null
+++ b/tests/kernel/unsorted/return_test.dart
@@ -0,0 +1,28 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of return (and imports, literals, ==, and static methods).
+
+import 'package:expect/expect.dart';
+
+test0() {}
+
+test1() { return; }
+
+test3() { return 3; }
+
+test4() => 4;
+
+test5() {
+  return 5;
+  Expect.isTrue(false);
+}
+
+main() {
+  Expect.isTrue(test0() == null);
+  Expect.isTrue(test1() == null);
+  Expect.isTrue(test3() == 3);
+  Expect.isTrue(test4() == 4);
+  Expect.isTrue(test5() == 5);
+}
diff --git a/tests/kernel/unsorted/simple_literal_test.dart b/tests/kernel/unsorted/simple_literal_test.dart
new file mode 100644
index 0000000..fd7ba87
--- /dev/null
+++ b/tests/kernel/unsorted/simple_literal_test.dart
@@ -0,0 +1,45 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// Tests of literals (and imports, return, ==, and static methods).
+import 'package:expect/expect.dart';
+
+test0() {
+  return 'Hello, world!';
+}
+
+test1() {
+  return 42;
+}
+
+test2() {
+  return 2.71828;
+}
+
+test3() {
+  return 6.022e23;
+}
+
+test4() {
+  return true;
+}
+
+test5() {
+  return false;
+}
+
+test6() {
+  return 1405006117752879898543142606244511569936384000000000;
+}
+
+main() {
+  Expect.isTrue(test0() == 'Hello, world!');
+  Expect.isTrue(test1() == 42);
+  Expect.isTrue(test2() == 2.71828);
+  Expect.isTrue(test3() == 6.022e23);
+  Expect.isTrue(test4());
+  Expect.isTrue(test5() == false);
+  Expect.isTrue(
+      test6() == 1405006117752879898543142606244511569936384000000000);
+}
diff --git a/tests/kernel/unsorted/string_buffer_test.dart b/tests/kernel/unsorted/string_buffer_test.dart
new file mode 100644
index 0000000..a89aee6
--- /dev/null
+++ b/tests/kernel/unsorted/string_buffer_test.dart
@@ -0,0 +1,9 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+main() {
+  var sb = new StringBuffer();
+  sb.writeln('hello world :)');
+  print(sb);
+}
diff --git a/tests/kernel/unsorted/string_concatenation_test.dart b/tests/kernel/unsorted/string_concatenation_test.dart
new file mode 100644
index 0000000..be6543a
--- /dev/null
+++ b/tests/kernel/unsorted/string_concatenation_test.dart
@@ -0,0 +1,13 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class A {
+  toString() => 'hello';
+}
+
+main() {
+  Expect.isTrue('begin ${new A()} end' == 'begin hello end');
+}
diff --git a/tests/kernel/unsorted/super_initializer_test.dart b/tests/kernel/unsorted/super_initializer_test.dart
new file mode 100644
index 0000000..b230686
--- /dev/null
+++ b/tests/kernel/unsorted/super_initializer_test.dart
@@ -0,0 +1,48 @@
+// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE.md file.
+
+import 'package:expect/expect.dart';
+
+String log;
+init() { log = ''; }
+logit(msg) { return log = '$log$msg'; }
+
+class Base {
+  var b;
+  Base.arg0() : b = logit('b') {
+    logit('B');
+  }
+  Base.arg1(a) : b = logit('b') {
+    logit('B');
+  }
+  Base.arg2(a, b) : b = logit('b') {
+    logit('B');
+  }
+}
+
+class Sub extends Base {
+  var x;
+  var s;
+  Sub.arg0() : x = logit('x'), super.arg0(), s = logit('s') {
+    logit('S');
+  }
+  Sub.arg1(a) : x = logit('x'), super.arg1(logit('1')), s = logit('s') {
+    logit('S');
+  }
+  Sub.arg2(a, b) : x = logit('x'), super.arg2(logit('1'), logit('2')), s = logit('s') {
+    logit('S');
+  }
+}
+
+test(fun(), String result) {
+  init();
+  fun();
+  Expect.isTrue(log == result);
+}
+
+main() {
+  test(() => new Sub.arg0(), 'xsbBS');
+  test(() => new Sub.arg1(1), 'x1sbBS');
+  test(() => new Sub.arg2(1, 2), 'x12sbBS');
+}
diff --git a/tests/kernel/unsorted/super_mixin_test.dart b/tests/kernel/unsorted/super_mixin_test.dart
new file mode 100644
index 0000000..de0871e
--- /dev/null
+++ b/tests/kernel/unsorted/super_mixin_test.dart
@@ -0,0 +1,39 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class Base {
+  var field;
+
+  method(x) {
+    print(x);
+    return x;
+  }
+
+  set setter(x) {
+    print(x);
+    field = x;
+  }
+}
+
+class Mixin {
+  method(x) {
+    return super.method(x + 'Mixin');
+  }
+
+  set setter(x) {
+    super.setter = x + 'Mixin';
+  }
+}
+
+class Sub extends Base with Mixin {
+}
+
+main() {
+  var object = new Sub();
+  Expect.isTrue(object.method('x') == 'xMixin');
+  object.setter = 'y';
+  Expect.isTrue(object.field == 'yMixin');
+}
diff --git a/tests/kernel/unsorted/super_test.dart b/tests/kernel/unsorted/super_test.dart
new file mode 100644
index 0000000..54f5d99
--- /dev/null
+++ b/tests/kernel/unsorted/super_test.dart
@@ -0,0 +1,40 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class A {
+  var field = 9;
+  var called = false;
+
+  superMethod() {
+    Expect.isTrue(field == 10);
+    called = true;
+    return true;
+  }
+}
+
+class B extends A {
+  doit() {
+    Expect.isTrue((super.field = 10) == 10);
+    Expect.isTrue(super.superMethod());
+    if (called) {
+      Expect.isTrue((super.field = 11) == 11);
+    }
+    return super.field;
+  }
+}
+
+class C extends B {
+  set field(v) {
+    throw 'should not happen';
+  }
+}
+
+main() {
+  var c = new C();
+  Expect.isTrue(c.field == 9);
+  Expect.isTrue(c.doit() == 11);
+  Expect.isTrue(c.field == 11);
+}
diff --git a/tests/kernel/unsorted/superclass_test.dart b/tests/kernel/unsorted/superclass_test.dart
new file mode 100644
index 0000000..15f1f56
--- /dev/null
+++ b/tests/kernel/unsorted/superclass_test.dart
@@ -0,0 +1,64 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class A {
+  A() {
+    print("A");
+  }
+
+  hello() {
+    print("A.hello()");
+    return 1;
+  }
+
+  hello1(a) {
+    print("A.hello1()");
+    print(a);
+    return 1;
+  }
+
+  foo(a, [b]) {
+    print("A.foo()");
+    print(a);
+    print(b);
+    return 1;
+  }
+
+  bar(a, {b}) {
+    print("A.bar()");
+    print(a);
+    print(b);
+    return 1;
+  }
+}
+
+class B extends A {
+  hello() {
+    print("B.hello()");
+    return 2;
+  }
+
+  bar(a, {b}) {
+    print("B.bar()");
+    print(a);
+    print(b);
+    return 2;
+  }
+}
+
+main() {
+  var o = new B();
+
+  // Base class methods.
+  Expect.isTrue(o.hello1(1) == 1);
+  Expect.isTrue(o.foo(1) == 1);
+  Expect.isTrue(o.foo(1, 2) == 1);
+
+  // Overwritten methods.
+  Expect.isTrue(o.hello() == 2);
+  Expect.isTrue(o.bar(1) == 2);
+  Expect.isTrue(o.bar(1, b: 2) == 2);
+}
diff --git a/tests/kernel/unsorted/switch_case_test.dart b/tests/kernel/unsorted/switch_case_test.dart
new file mode 100644
index 0000000..333310f
--- /dev/null
+++ b/tests/kernel/unsorted/switch_case_test.dart
@@ -0,0 +1,174 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+mkOne() => 1;
+mkTwo() => 2;
+
+testNormal() {
+  int result;
+  switch(mkOne()) {
+    case 0:
+      result = 0;
+      break;
+    case 1:
+      result = 1;
+      break;
+    case 2:
+      result = 2;
+      break;
+    default:
+      result = 3;
+      break;
+  }
+  Expect.isTrue(result == 1);
+}
+
+testDefault() {
+  int result;
+  switch(null) {
+    case 0:
+      result = 0;
+      break;
+    case 1:
+      result = 1;
+      break;
+    case 2:
+      result = 2;
+      break;
+    default:
+      result = 3;
+      break;
+  }
+  Expect.isTrue(result == 3);
+}
+
+testFallThrough() {
+  int result;
+  switch(mkOne()) {
+    case 0:
+      result = 0;
+      break;
+    case 1:
+    case 2:
+      result = 2;
+      break;
+    default:
+      result = 3;
+      break;
+  }
+  Expect.isTrue(result == 2);
+}
+
+testContinue() {
+  int result;
+  switch(mkTwo()) {
+    case 0:
+      result = 0;
+      break;
+
+    setitto1:
+    case 1:
+      result = 1;
+      continue setitto3;
+
+    case 2:
+      result = 2;
+      continue setitto1;
+
+    setitto3:
+    default:
+      result = 3;
+      break;
+  }
+  Expect.isTrue(result == 3);
+}
+
+testOnlyDefault() {
+  int result;
+  switch(mkTwo()) {
+    default:
+      result = 42;
+  }
+  Expect.isTrue(result == 42);
+}
+
+testOnlyDefaultWithBreak() {
+  int result;
+  switch(mkTwo()) {
+    default:
+      result = 42;
+  }
+  Expect.isTrue(result == 42);
+}
+
+String testReturn() {
+  switch(mkOne()) {
+    case 0: return "bad";
+    case 1: return "good";
+    default: return "bad";
+  }
+}
+
+regressionTest() {
+  Expect.isTrue(regressionTestHelper(0, 0) == -1);
+  Expect.isTrue(regressionTestHelper(4, 0) == -1);
+  Expect.isTrue(regressionTestHelper(4, 1) == 42);
+}
+
+regressionTestHelper(i, j) {
+  switch (i) {
+    case 4:
+      switch (j) {
+        case 1:
+          return 42;
+      }
+  }
+  return -1;
+}
+
+regressionTest2() {
+  var state = 1;
+  while (state < 2) {
+    switch (state) {
+      case 1:
+        state++;
+        break;
+      case 3:
+      case 4:
+        // We will translate this currently to an empty [Fragment] which can
+        // cause issues if we would like to append/prepend to it.
+        assert(false);
+    }
+  }
+  return [1];
+}
+
+regressionTest3() {
+  f(x) {
+    switch (x) {
+      case 1:
+        return 2;
+      case 2:
+    }
+    throw new UnsupportedError("Unexpected constant kind.");
+  }
+  Expect.isTrue(f(1) == 2);
+}
+
+main() {
+  testNormal();
+  testDefault();
+  testFallThrough();
+  testContinue();
+  testOnlyDefault();
+  testOnlyDefaultWithBreak();
+  regressionTest();
+  regressionTest2();
+  regressionTest3();
+
+  var result = testReturn();
+  Expect.isTrue(result == "good");
+}
diff --git a/tests/kernel/unsorted/symbol_literal_test.dart b/tests/kernel/unsorted/symbol_literal_test.dart
new file mode 100644
index 0000000..6a3cc8a
--- /dev/null
+++ b/tests/kernel/unsorted/symbol_literal_test.dart
@@ -0,0 +1,10 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+main() {
+  Expect.isTrue('${#abc}' == 'Symbol("abc")');
+  Expect.isTrue('${#abc.xzy}' == 'Symbol("abc.xzy")');
+}
diff --git a/tests/kernel/unsorted/this_capture_test.dart b/tests/kernel/unsorted/this_capture_test.dart
new file mode 100644
index 0000000..ea296d6
--- /dev/null
+++ b/tests/kernel/unsorted/this_capture_test.dart
@@ -0,0 +1,34 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class Foo {
+  capture() {
+    return () {
+      return this;
+    };
+  }
+
+  captureFirst(a, b) {
+    return () {
+      print(a);
+      return this;
+    };
+  }
+
+  captureLast(a, b) {
+    return () {
+      print(b);
+      return this;
+    };
+  }
+}
+
+main() {
+  var foo = new Foo();
+  Expect.isTrue(identical(foo, (foo.capture())()));
+  Expect.isTrue(identical(foo, (foo.captureFirst(1, 2))()));
+  Expect.isTrue(identical(foo, (foo.captureLast(1, 2))()));
+}
diff --git a/tests/kernel/unsorted/this_test.dart b/tests/kernel/unsorted/this_test.dart
new file mode 100644
index 0000000..666da97
--- /dev/null
+++ b/tests/kernel/unsorted/this_test.dart
@@ -0,0 +1,15 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class A {
+  getThis() => this;
+}
+
+main() {
+  var a = new A();
+  Expect.isTrue(a == a.getThis());
+  Expect.isTrue(identical(a, a.getThis()));
+}
diff --git a/tests/kernel/unsorted/throw_try_catch_test.dart b/tests/kernel/unsorted/throw_try_catch_test.dart
new file mode 100644
index 0000000..d76cba7
--- /dev/null
+++ b/tests/kernel/unsorted/throw_try_catch_test.dart
@@ -0,0 +1,190 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+testSimpleThrowCatch() {
+  var x = 1;
+  try {
+    throw x++;
+  } on int catch (e) {
+    Expect.isTrue(e == 1);
+    Expect.isTrue(x == 2);
+    x++;
+  }
+  Expect.isTrue(x == 3);
+}
+
+testNestedThrowCatch() {
+  var x = 1;
+  try {
+    throw x++;
+  } catch (e) {
+    Expect.isTrue(e == 1);
+    Expect.isTrue(x == 2);
+    x++;
+
+    try {
+      throw x++;
+    } catch (e) {
+      Expect.isTrue(e == 3);
+      Expect.isTrue(x == 4);
+      x++;
+    }
+  }
+  Expect.isTrue(x == 5);
+}
+
+testNestedThrowCatch2() {
+  var x = 1;
+  try {
+    try {
+      throw x++;
+    } catch (e) {
+      Expect.isTrue(e == 1);
+      Expect.isTrue(x == 2);
+      x++;
+    }
+    throw x++;
+  } catch (e) {
+    Expect.isTrue(e == 3);
+    Expect.isTrue(x == 4);
+    x++;
+  }
+  Expect.isTrue(x == 5);
+}
+
+testSiblingThrowCatch() {
+  var x = 1;
+  try {
+    throw x++;
+  } catch (e) {
+    Expect.isTrue(e == 1);
+    Expect.isTrue(x == 2);
+    x++;
+  }
+  try {
+    throw x++;
+  } catch (e) {
+    Expect.isTrue(e == 3);
+    Expect.isTrue(x == 4);
+    x++;
+  }
+
+  Expect.isTrue(x == 5);
+}
+
+testTypedCatch() {
+  var good = false;
+  try {
+    throw 1;
+  } on int catch (e) {
+    Expect.isTrue(e == 1);
+    good = true;
+  } on String catch (_) {
+    Expect.isTrue(false);
+  }
+  Expect.isTrue(good);
+}
+
+testTypedCatch2() {
+  var good = false;
+  try {
+    throw 'a';
+  } on int catch (_) {
+    Expect.isTrue(false);
+  } on String catch (e) {
+    Expect.isTrue(e == 'a');
+    good = true;
+  }
+  Expect.isTrue(good);
+}
+
+testThrowNull() {
+  var good = false;
+  try {
+    throw null;
+  } on NullThrownError catch (_) {
+    good = true;
+  }
+  Expect.isTrue(good);
+}
+
+testFinally() {
+  var x = 0;
+  try {
+    throw x++;
+  } catch (_) {
+    x++;
+  } finally {
+    x++;
+  }
+  Expect.isTrue(x == 3);
+}
+
+testFinally2() {
+  var x = 0;
+  try {
+    try {
+      throw x++;
+    } catch (_) {
+      x++;
+    } finally {
+      x++;
+    }
+  } finally {
+    x++;
+  }
+  Expect.isTrue(x == 4);
+}
+
+testFinally3() {
+  try {
+    var x = 0;
+    try {
+      throw x++;
+    } finally {
+      x++;
+    }
+    Expect.isTrue(x == 2);
+  } catch (_) {}
+}
+
+testSuccessfulBody() {
+  var x = 0;
+  try {
+    x++;
+  } finally {
+    x++;
+  }
+  Expect.isTrue(x == 2);
+}
+
+testSuccessfulBody2() {
+  var x = 0;
+  try {
+    try {
+      x++;
+    } finally {
+      x++;
+      throw 1;
+    }
+  } on int {}
+  Expect.isTrue(x == 2);
+}
+
+main() {
+  testSimpleThrowCatch();
+  testNestedThrowCatch();
+  testNestedThrowCatch2();
+  testSiblingThrowCatch();
+  testTypedCatch();
+  testTypedCatch2();
+  testThrowNull();
+  testFinally();
+  testFinally2();
+  testFinally3();
+  testSuccessfulBody();
+  testSuccessfulBody2();
+}
diff --git a/tests/kernel/unsorted/try_context_test.dart b/tests/kernel/unsorted/try_context_test.dart
new file mode 100644
index 0000000..f836c89
--- /dev/null
+++ b/tests/kernel/unsorted/try_context_test.dart
@@ -0,0 +1,91 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+throwValue(val) => throw val;
+
+f1() {
+  var a = 0;
+  var b = 0;
+  var c = 0;
+  var d = 0;
+  for (var i = 0; i < 10; i++) {
+    try {
+      for (var j = 0; j < 11; j++) {
+        try {
+          capture() => [i, j, a, b, c, d];
+          throwValue(j == 10 ? "${j}" : j);
+        } on num catch (e) {
+          a += j;
+          b -= e;
+        }
+      }
+    } catch (e) {
+      c++;
+      d += int.parse(e);
+    }
+  }
+  return [a, b, c, d];
+}
+
+
+f2() {
+  var a = 0;
+  var b = 0;
+  var c = 0;
+  var d = 0;
+  for (var i = 0; i < 10; i++) {
+    try {
+      for (var j = 0; j < 11; j++) {
+        try {
+          capture() => [i, j, a, b, c, d];
+          throwValue(j == 10 ? "${j}" : j);
+        } on num catch (e) {
+          a += j;
+          b -= e;
+        }
+      }
+    } catch (e) {
+      capture() => e;
+      c++;
+      d += int.parse(e);
+    }
+  }
+  return [a, b, c, d];
+}
+
+
+f3() {
+  var a = 0;
+  var b = 0;
+  var c = 0;
+  var d = 0;
+  for (var i = 0; i < 10; i++) {
+    try {
+      for (var j = 0; j < 11; j++) {
+        try {
+          capture() => [i, j, a, b, c, d];
+          throwValue(j == 10 ? "${j}" : j);
+        } on num catch (e) {
+          a += j;
+          b -= e;
+        }
+      }
+    } catch (e) {
+      capture() => e;
+      c++;
+      d += int.parse(e);
+      continue;
+    }
+  }
+  return [a, b, c, d];
+}
+
+
+main() {
+  Expect.listEquals([450, -450, 10, 100], f1());
+  Expect.listEquals([450, -450, 10, 100], f2());
+  Expect.listEquals([450, -450, 10, 100], f3());
+}
diff --git a/tests/kernel/unsorted/try_finally_test.dart b/tests/kernel/unsorted/try_finally_test.dart
new file mode 100644
index 0000000..db3069b
--- /dev/null
+++ b/tests/kernel/unsorted/try_finally_test.dart
@@ -0,0 +1,158 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+testSimpleBreak() {
+  var x = 1;
+  while (true) {
+    try {
+      x++;
+      break;
+    } finally {
+      x++;
+      break;
+    }
+  }
+  return x;
+}
+
+testReturnFinally() {
+  try {
+    return 1;
+  } finally {
+    return 42;
+  }
+}
+
+testNestedReturnFinally() {
+  try {
+    try {
+      return 1;
+    } finally {
+      return 2;
+    }
+  } finally {
+    return 42;
+  }
+}
+
+testReturnInsideLoop() {
+  while (true) {
+    try {
+      print("hello");
+    } finally {
+      return 42;
+    }
+  }
+}
+
+testStopContinueInsideLoop() {
+  while (true) {
+    try {
+      continue;
+    } finally {
+      return 42;
+    }
+  }
+}
+
+testStopBreakInsideLoop() {
+  var foo = 1;
+  while (true) {
+    try {
+      if (foo == 1) {
+        // 1st iteration we break.
+        break;
+      } else if (foo == 2) {
+        // 2nd iteration we return.
+        return 42;
+      }
+    } finally {
+      // 1st iteration we overrwrite break with continue.
+      if (foo == 1) {
+        foo++;
+        continue;
+      } else {
+        // Let return work
+      }
+    }
+  }
+  return foo;
+}
+
+testStopBreakInsideLoop2() {
+  var foo = 1;
+  while (true) {
+    try {
+      if (foo == 1) {
+        // 1st iteration we break.
+        break;
+      } else if (foo == 2) {
+        // 2nd iteration we return.
+        return -1;
+      }
+    } finally {
+      // 1st iteration we overrwrite break with continue.
+      if (foo == 1) {
+        foo++;
+        continue;
+      } else {
+        // 2nd iteration we overrwrite return with break.
+        foo = 42;
+        break;
+      }
+    }
+  }
+  return foo;
+}
+
+testStopContinueInsideSwitch() {
+  var foo = 1;
+  switch (foo) {
+    jump5:
+    case 5:
+      return -1;
+
+    case 1:
+      try {
+        continue jump5;
+      } finally {
+        return 42;
+      }
+  }
+}
+
+testStopContinueInsideSwitch2() {
+  var foo = 1;
+  switch (foo) {
+    jump5:
+    case 5:
+      return -1;
+
+    jump42:
+    case 5:
+      return 42;
+
+    case 1:
+      try {
+        continue jump5;
+      } finally {
+        continue jump42;
+      }
+  }
+}
+
+main() {
+  Expect.isTrue(testSimpleBreak() == 3);
+  Expect.isTrue(testReturnFinally() == 42);
+  Expect.isTrue(testNestedReturnFinally() == 42);
+  Expect.isTrue(testReturnInsideLoop() == 42);
+  Expect.isTrue(testStopContinueInsideLoop() == 42);
+  Expect.isTrue(testStopBreakInsideLoop() == 42);
+  Expect.isTrue(testStopBreakInsideLoop2() == 42);
+  Expect.isTrue(testStopContinueInsideLoop() == 42);
+  Expect.isTrue(testStopContinueInsideSwitch() == 42);
+  Expect.isTrue(testStopContinueInsideSwitch2() == 42);
+}
diff --git a/tests/kernel/unsorted/type_args_regression_test.dart b/tests/kernel/unsorted/type_args_regression_test.dart
new file mode 100644
index 0000000..0b88bd7
--- /dev/null
+++ b/tests/kernel/unsorted/type_args_regression_test.dart
@@ -0,0 +1,22 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class Box<T> {
+  T value;
+
+  Box(this.value);
+
+  factory Box.a(T v) => new Box(v);
+  factory Box.b(T v) = Box<T>;
+  factory Box.c(T v) => new Box(v);
+}
+
+main() {
+  Expect.isTrue(new Box<int>(1).value == 1);
+  Expect.isTrue(new Box<int>.a(1).value == 1);
+  Expect.isTrue(new Box<int>.b(1).value == 1);
+  Expect.isTrue(new Box<int>.c(1).value == 1);
+}
diff --git a/tests/kernel/unsorted/types_test.dart b/tests/kernel/unsorted/types_test.dart
new file mode 100644
index 0000000..157f2f8
--- /dev/null
+++ b/tests/kernel/unsorted/types_test.dart
@@ -0,0 +1,202 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:expect/expect.dart';
+
+class TypeTester<T> {
+  const TypeTester();
+  bool isCorrectType(object) => object is T;
+}
+
+class ClosureTypeTester<T> {
+  const ClosureTypeTester();
+  bool isCorrectType(object) => (() => object is T)();
+}
+
+class Base<A, B> {
+  final A a;
+  final B b;
+  const Base(this.a, this.b);
+  const factory Base.fac(A a, B b) = Base<A, B>;
+}
+
+class Sub1<C, D> extends Base<C, C> {
+  final D d;
+  const Sub1(C a, this.d) : super(a, a);
+  const factory Sub1.fac(C a, D d) = Sub1<C, D>;
+}
+
+class Sub2<C, D> extends Base<D, C> {
+  const Sub2(C a, D b) : super(b, a);
+  const factory Sub2.fac(C a, D b) = Sub2<C, D>;
+}
+
+class G<T> { }
+class I { }
+class A implements I { }
+class B extends A { }
+class C {}
+
+testConstantLiteralTypes() {
+  Expect.isTrue(const [1] is List);
+  Expect.isTrue(const [1] is List<int>);
+  Expect.isTrue(const [1] is List<String>);
+  Expect.isTrue(const <int>[1] is List);
+  Expect.isTrue(const <int>[1] is List<int>);
+  Expect.isTrue(!(const <int>[1] is List<String>));
+  Expect.isTrue(const {"a": 1} is Map);
+  Expect.isTrue(const {"a": 1} is Map<String, int>);
+  Expect.isTrue(const {"a": 1} is Map<int, String>);
+  Expect.isTrue(const <String, int>{"a": 1} is Map);
+  Expect.isTrue(const <String, int>{"a": 1} is Map<String, int>);
+  Expect.isTrue(!(const <String, int>{"a": 1} is Map<int, String>));
+}
+
+testNonConstantLiteralTypes() {
+  Expect.isTrue([1] is List);
+  Expect.isTrue([1] is List<int>);
+  Expect.isTrue([1] is List<String>);
+  Expect.isTrue(<int>[1] is List);
+  Expect.isTrue(<int>[1] is List<int>);
+  Expect.isTrue(!(<int>[1] is List<String>));
+}
+
+testParametrizedClass() {
+  Expect.isTrue(new Base<int, int>(1, 1) is Base<int, int>);
+  Expect.isTrue(new Base<int, int>(1, 1) is Base);
+  Expect.isTrue(new Base<int, int>(1, 1) is Base<Object, Object>);
+  Expect.isTrue(!(new Base<int, int>(1, 1) is Base<int, String>));
+  Expect.isTrue(!(new Base<int, int>(1, 1) is Base<String, int>));
+  Expect.isTrue(new Sub1<int, String>(1, "1") is Base<int, int>);
+  Expect.isTrue(new Sub1<int, String>(1, "1") is Base);
+  Expect.isTrue(new Sub1<int, String>(1, "1") is Sub1<int, String>);
+  Expect.isTrue(new Sub1<int, String>(1, "1") is Sub1);
+  Expect.isTrue(!(new Sub1<int, String>(1, "1") is Base<String, int>));
+  Expect.isTrue(!(new Sub1<int, String>(1, "1") is Base<int, String>));
+  Expect.isTrue(!(new Sub1<int, String>(1, "1") is Sub1<String, String>));
+  Expect.isTrue(new Sub2<int, String>(1, "1") is Base<String, int>);
+  Expect.isTrue(new Sub2<int, String>(1, "1") is Base);
+  Expect.isTrue(new Sub2<int, String>(1, "1") is Sub2<int, String>);
+  Expect.isTrue(new Sub2<int, String>(1, "1") is Sub2);
+  Expect.isTrue(!(new Sub2<int, String>(1, "1") is Base<int, int>));
+  Expect.isTrue(!(new Sub2<int, String>(1, "1") is Base<int, String>));
+  Expect.isTrue(!(new Sub2<int, String>(1, "1") is Sub2<String, String>));
+}
+
+testTypeTester() {
+  Expect.isTrue(new TypeTester<int>().isCorrectType(10));
+  Expect.isTrue(!new TypeTester<int>().isCorrectType("abc"));
+  Expect.isTrue(new TypeTester<List<int>>().isCorrectType([1]));
+  Expect.isTrue(new TypeTester<List<int>>().isCorrectType(<int>[1]));
+  Expect.isTrue(!new TypeTester<List<int>>().isCorrectType(<String>["1"]));
+  Expect.isTrue(new TypeTester<Base<String, int>>()
+      .isCorrectType(new Sub2<int, String>(1, "1")));
+  Expect.isTrue(new TypeTester<Sub2<int, String>>()
+      .isCorrectType(new Sub2<int, String>(1, "1")));
+}
+
+testClosureTypeTester() {
+  Expect.isTrue(new ClosureTypeTester<int>().isCorrectType(10));
+  Expect.isTrue(!new ClosureTypeTester<int>().isCorrectType("abc"));
+  Expect.isTrue(new ClosureTypeTester<List<int>>().isCorrectType([1]));
+  Expect.isTrue(new ClosureTypeTester<List<int>>().isCorrectType(<int>[1]));
+  Expect.isTrue(!new ClosureTypeTester<List<int>>()
+      .isCorrectType(<String>["1"]));
+  Expect.isTrue(new ClosureTypeTester<Base<String, int>>()
+      .isCorrectType(new Sub2<int, String>(1, "1")));
+  Expect.isTrue(new ClosureTypeTester<Sub2<int, String>>()
+      .isCorrectType(new Sub2<int, String>(1, "1")));
+}
+
+testConstTypeArguments() {
+  Expect.isTrue(const Sub1<int, String>(1, "1") is Sub1<int, String>);
+  Expect.isTrue(const Sub1<int, String>.fac(1, "1") is Sub1<int, String>);
+  Expect.isTrue(!(const Sub1<int, String>(1, "1") is Sub1<String, String>));
+  Expect.isTrue(!(const Sub1<int, String>.fac(1, "1") is Sub1<String, String>));
+
+  Expect.isTrue(const ClosureTypeTester<List<Base<int, String>>>()
+      .isCorrectType(
+       const <Base<int, String>>[const Base<int, String>(1, "2")]));
+  Expect.isTrue(const ClosureTypeTester<List<Base<int, String>>>()
+      .isCorrectType(
+       const <Base<int, String>>[const Base<int, String>.fac(1, "2")]));
+  Expect.isTrue(!const ClosureTypeTester<List<Base<int, String>>>()
+      .isCorrectType(
+       const <Base<String, String>>[const Base<String, String>("1", "2")]));
+  Expect.isTrue(!const ClosureTypeTester<List<Base<int, String>>>()
+      .isCorrectType(
+       const <Base<String, String>>[const Base<String, String>.fac("1", "2")]));
+
+  Expect.isTrue(const TypeTester<Sub2<int, String>>()
+      .isCorrectType(const Sub2<int, String>(1, "1")));
+  Expect.isTrue(const TypeTester<Sub2<int, String>>()
+      .isCorrectType(const Sub2<int, String>.fac(1, "1")));
+  Expect.isTrue(!const TypeTester<Sub2<int, String>>()
+      .isCorrectType(const Sub2<String, String>("a", "b")));
+  Expect.isTrue(!const TypeTester<Sub2<int, String>>()
+      .isCorrectType(const Sub2<String, String>.fac("a", "b")));
+}
+
+testNoBound() {
+  new G<int>();
+  new G<num>();
+  new G<Function>();
+  new G<Object>();
+  new G();
+  new G();
+  new G<G>();
+}
+
+testSubtypeChecker() {
+  Expect.isTrue(new TypeTester<num>().isCorrectType(1));
+  Expect.isTrue(new TypeTester<num>().isCorrectType(1.0));
+  Expect.isTrue(new TypeTester<A>().isCorrectType(new B()));
+  Expect.isTrue(new TypeTester<Object>().isCorrectType(new C()));
+  Expect.isTrue(new TypeTester<I>().isCorrectType(new A()));
+}
+
+testFunctionTypes() {
+  fun(int x, String y) => "${x}${y}";
+  Expect.isTrue(fun is FunctionType);
+  Expect.isTrue(nan is FunctionType);
+  Expect.isTrue(nan is Function);
+}
+
+num nan(double d, Pattern p) => double.NAN;
+
+typedef int FunctionType(num _, Pattern __);
+
+
+testLiteralTypeArguments() {
+  Expect.isTrue(new Foo<String, int>().foo() is List<String>);
+  Expect.isTrue(new Foo<int, String>().bar() is Map<int, String>);
+}
+
+class Foo<T1, T2> {
+  foo() => <T1>[];
+  bar() => <T1, T2>{};
+}
+
+regressionTest1() {
+  Expect.isTrue(!StaticTypeTester.isInt('abc'));
+}
+
+class StaticTypeTester<T> {
+  static isInt(x) => x is int;
+}
+
+main() {
+  testConstantLiteralTypes();
+  testNonConstantLiteralTypes();
+  testParametrizedClass();
+  testTypeTester();
+  testClosureTypeTester();
+  testConstTypeArguments();
+  testNoBound();
+  testSubtypeChecker();
+  testFunctionTypes();
+  testLiteralTypeArguments();
+  regressionTest1();
+}
+
diff --git a/tests/language/language_analyzer2.status b/tests/language/language_analyzer2.status
index be27119..ec05db6 100644
--- a/tests/language/language_analyzer2.status
+++ b/tests/language/language_analyzer2.status
@@ -410,7 +410,6 @@
 switch3_negative_test: CompileTimeError
 switch4_negative_test: CompileTimeError
 switch5_negative_test: CompileTimeError
-switch6_test: StaticWarning
 switch7_negative_test: CompileTimeError
 switch_fallthru_test: StaticWarning
 test_negative_test: CompileTimeError
diff --git a/tests/language/language_dart2js.status b/tests/language/language_dart2js.status
index b9e66f6..1da0824 100644
--- a/tests/language/language_dart2js.status
+++ b/tests/language/language_dart2js.status
@@ -371,3 +371,6 @@
 regress_26855_test/2: Crash # Issue 26867
 regress_26855_test/3: Crash # Issue 26867
 regress_26855_test/4: Crash # Issue 26867
+
+[ $compiler != dart2analyzer]
+switch_case_warn_test: SKIP # Analyzer only, see language_analyzer2.status
diff --git a/tests/language/language_kernel.status b/tests/language/language_kernel.status
new file mode 100644
index 0000000..2002d17
--- /dev/null
+++ b/tests/language/language_kernel.status
@@ -0,0 +1,715 @@
+# Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+# for details. All rights reserved. Use of this source code is governed by a
+# BSD-style license that can be found in the LICENSE file.
+
+# These tests currently take too long. Remove when they are fixed.
+[ $compiler == dartk || $compiler == rasta ]
+large_class_declaration_test: Skip
+large_implicit_getter_test: Skip
+larger_implicit_getter_test: Skip
+
+# dartk: JIT failures
+[ $compiler == dartk && $runtime == vm ]
+accessor_conflict_export2_test: RuntimeError
+accessor_conflict_export_test: RuntimeError
+accessor_conflict_import2_test: RuntimeError
+accessor_conflict_import_prefixed2_test: RuntimeError
+accessor_conflict_import_prefixed_test: RuntimeError
+accessor_conflict_import_test: RuntimeError
+assertion_test: RuntimeError
+async_break_in_finally_test: RuntimeError
+async_control_structures_test: RuntimeError
+async_star_cancel_and_throw_in_finally_test: RuntimeError
+async_star_cancel_while_paused_test: RuntimeError
+async_star_regression_fisk_test: Crash
+async_star_stream_take_test: Timeout
+async_star_take_reyield_test: Timeout
+async_star_test: Crash
+async_throw_in_catch_test/forceAwait: RuntimeError
+async_throw_in_catch_test/none: RuntimeError
+asyncstar_throw_in_catch_test: Timeout
+asyncstar_yield_test: Timeout
+asyncstar_yieldstar_test: Timeout
+await_exceptions_test: RuntimeError
+await_future_test: RuntimeError
+await_regression_test: RuntimeError
+bad_constructor_test/05: CompileTimeError
+bad_raw_string_negative_test: Fail
+cha_deopt1_test: RuntimeError
+cha_deopt2_test: RuntimeError
+cha_deopt3_test: RuntimeError
+closure_type_variable_test: RuntimeError
+closures_initializer_test: RuntimeError
+compile_time_constant12_test: Crash
+compile_time_constant_k_test/01: RuntimeError
+compile_time_constant_k_test/02: RuntimeError
+compile_time_constant_k_test/03: RuntimeError
+compile_time_constant_o_test/01: RuntimeError
+compile_time_constant_o_test/02: RuntimeError
+config_import_test: RuntimeError
+conflicting_type_variable_and_setter_test: CompileTimeError
+const_dynamic_type_literal_test/02: RuntimeError
+const_error_multiply_initialized_test/02: RuntimeError
+const_error_multiply_initialized_test/04: RuntimeError
+const_evaluation_test/01: RuntimeError
+const_for_in_variable_test/01: MissingCompileTimeError
+const_locals_test: RuntimeError
+const_nested_test: RuntimeError
+const_string_test: RuntimeError
+constructor2_test: RuntimeError
+constructor3_test: RuntimeError
+constructor5_test: RuntimeError
+constructor6_test: RuntimeError
+constructor_duplicate_final_test/01: MissingRuntimeError
+constructor_duplicate_final_test/02: MissingRuntimeError
+constructor_duplicate_final_test/03: MissingCompileTimeError
+constructor_named_arguments_test/01: Crash
+cyclic_type2_test: CompileTimeError
+cyclic_type_test/00: RuntimeError
+cyclic_type_test/01: RuntimeError
+cyclic_type_test/02: CompileTimeError
+cyclic_type_test/03: RuntimeError
+cyclic_type_test/04: CompileTimeError
+cyclic_type_variable_test/01: Crash
+cyclic_type_variable_test/02: Crash
+cyclic_type_variable_test/03: Crash
+cyclic_type_variable_test/04: Crash
+cyclic_type_variable_test/none: Crash
+deep_nesting1_negative_test: Crash
+deep_nesting2_negative_test: Crash
+deferred_call_empty_before_load_test: RuntimeError
+deferred_closurize_load_library_test: Crash
+deferred_constant_list_test: RuntimeError
+deferred_constraints_constants_test/none: RuntimeError
+deferred_constraints_constants_test/reference_after_load: RuntimeError
+deferred_constraints_type_annotation_test/as_operation: RuntimeError
+deferred_constraints_type_annotation_test/catch_check: RuntimeError
+deferred_constraints_type_annotation_test/is_check: RuntimeError
+deferred_constraints_type_annotation_test/new: RuntimeError
+deferred_constraints_type_annotation_test/new_before_load: RuntimeError
+deferred_constraints_type_annotation_test/new_generic1: RuntimeError
+deferred_constraints_type_annotation_test/new_generic2: RuntimeError
+deferred_constraints_type_annotation_test/new_generic3: RuntimeError
+deferred_constraints_type_annotation_test/none: RuntimeError
+deferred_constraints_type_annotation_test/static_method: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation1: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_generic1: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_generic2: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_generic3: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_generic4: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_non_deferred: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_null: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_top_level: RuntimeError
+deferred_function_type_test: RuntimeError
+deferred_global_test: RuntimeError
+deferred_import_core_test: RuntimeError
+deferred_inheritance_constraints_test/redirecting_constructor: RuntimeError
+deferred_inlined_test: RuntimeError
+deferred_load_constants_test/none: RuntimeError
+deferred_load_inval_code_test: RuntimeError
+deferred_load_library_wrong_args_test/none: RuntimeError
+deferred_mixin_test: RuntimeError
+deferred_no_such_method_test: RuntimeError
+deferred_not_loaded_check_test: RuntimeError
+deferred_only_constant_test: RuntimeError
+deferred_optimized_test: RuntimeError
+deferred_redirecting_factory_test: RuntimeError
+deferred_regression_22995_test: RuntimeError
+deferred_shadow_load_library_test: RuntimeError
+deferred_shared_and_unshared_classes_test: RuntimeError
+deferred_static_seperate_test: RuntimeError
+deferred_super_dependency_test/01: RuntimeError
+deferred_type_dependency_test/as: RuntimeError
+deferred_type_dependency_test/is: RuntimeError
+deferred_type_dependency_test/none: RuntimeError
+deferred_type_dependency_test/type_annotation: RuntimeError
+duplicate_export_negative_test: Fail
+enum_duplicate_test/01: RuntimeError
+enum_duplicate_test/02: RuntimeError
+enum_duplicate_test/none: RuntimeError
+enum_mirror_test: RuntimeError
+enum_private_test/01: RuntimeError
+enum_private_test/02: RuntimeError
+enum_private_test/none: RuntimeError
+enum_syntax_test/05: MissingCompileTimeError
+enum_syntax_test/06: MissingCompileTimeError
+enum_test: RuntimeError
+evaluation_redirecting_constructor_test: RuntimeError
+example_constructor_test: RuntimeError
+execute_finally8_test: RuntimeError
+execute_finally9_test: RuntimeError
+export_double_same_main_test: Crash
+export_main_test: Crash
+external_test/10: MissingRuntimeError
+external_test/13: MissingRuntimeError
+external_test/20: MissingRuntimeError
+external_test/21: MissingCompileTimeError
+external_test/24: MissingCompileTimeError
+external_test/25: MissingCompileTimeError
+f_bounded_equality_test: RuntimeError
+field_initialization_order_test: RuntimeError
+final_field_initialization_order_test: RuntimeError
+final_super_field_set_test/01: RuntimeError
+final_syntax_test/01: MissingCompileTimeError
+final_syntax_test/02: MissingCompileTimeError
+final_syntax_test/03: MissingCompileTimeError
+final_syntax_test/04: MissingCompileTimeError
+fixed_type_variable2_test/02: RuntimeError
+fixed_type_variable2_test/04: RuntimeError
+fixed_type_variable2_test/06: RuntimeError
+fixed_type_variable_test/01: RuntimeError
+fixed_type_variable_test/02: RuntimeError
+fixed_type_variable_test/03: RuntimeError
+fixed_type_variable_test/04: RuntimeError
+fixed_type_variable_test/05: RuntimeError
+fixed_type_variable_test/06: RuntimeError
+for2_test: RuntimeError
+for_variable_capture_test: RuntimeError
+forwarding_factory_constructor_default_values_test: RuntimeError
+function_subtype2_test: RuntimeError
+function_subtype_bound_closure3_test: RuntimeError
+function_subtype_bound_closure4_test: RuntimeError
+function_subtype_cast1_test: RuntimeError
+function_subtype_inline0_test: RuntimeError
+function_subtype_local3_test: RuntimeError
+function_subtype_local4_test: RuntimeError
+function_subtype_not1_test: RuntimeError
+function_type_alias2_test: RuntimeError
+function_type_alias3_test: RuntimeError
+function_type_alias4_test: RuntimeError
+generic2_test: RuntimeError
+generic_closure_test: RuntimeError
+generic_creation_test: RuntimeError
+generic_field_mixin2_test: RuntimeError
+generic_field_mixin4_test: RuntimeError
+generic_field_mixin5_test: RuntimeError
+generic_functions_test: CompileTimeError
+generic_inheritance_test: RuntimeError
+generic_local_functions_test: CompileTimeError
+generic_methods_function_type_test: CompileTimeError
+generic_methods_new_test: CompileTimeError
+generic_methods_test: CompileTimeError
+generic_methods_type_expression_test: CompileTimeError
+generic_sends_test: CompileTimeError
+generic_test: RuntimeError
+getter_closure_execution_order_test: RuntimeError
+getter_setter_in_lib_test: RuntimeError
+inferrer_closure_test: RuntimeError
+initializing_formal_access_test: CompileTimeError
+initializing_formal_capture_test: CompileTimeError
+initializing_formal_final_test: CompileTimeError
+initializing_formal_type_test: CompileTimeError
+instance_creation_in_function_annotation_test: RuntimeError
+invocation_mirror_test: RuntimeError
+is_not_class2_test: RuntimeError
+issue13474_test: RuntimeError
+issue23244_test: Crash
+issue_1751477_test: RuntimeError
+least_upper_bound_expansive_test/01: CompileTimeError
+least_upper_bound_expansive_test/02: CompileTimeError
+least_upper_bound_expansive_test/03: CompileTimeError
+least_upper_bound_expansive_test/04: CompileTimeError
+least_upper_bound_expansive_test/05: CompileTimeError
+least_upper_bound_expansive_test/06: CompileTimeError
+least_upper_bound_expansive_test/07: CompileTimeError
+least_upper_bound_expansive_test/08: CompileTimeError
+least_upper_bound_expansive_test/09: CompileTimeError
+least_upper_bound_expansive_test/10: CompileTimeError
+least_upper_bound_expansive_test/11: CompileTimeError
+least_upper_bound_expansive_test/12: CompileTimeError
+least_upper_bound_expansive_test/none: CompileTimeError
+library_env_test/has_html_support: RuntimeError
+library_env_test/has_no_io_support: RuntimeError
+library_env_test/has_no_mirror_support: RuntimeError
+list_literal4_test: RuntimeError
+main_not_a_function_test/01: Crash
+malformed_test/none: RuntimeError
+map_literal3_test: RuntimeError
+map_literal4_test: RuntimeError
+map_literal6_test: RuntimeError
+metadata_test: CompileTimeError
+method_override_test: RuntimeError
+mixin_generic_test: RuntimeError
+mixin_illegal_super_use_test/01: MissingCompileTimeError
+mixin_illegal_super_use_test/02: MissingCompileTimeError
+mixin_illegal_super_use_test/03: MissingCompileTimeError
+mixin_illegal_super_use_test/04: MissingCompileTimeError
+mixin_illegal_super_use_test/05: MissingCompileTimeError
+mixin_illegal_super_use_test/06: MissingCompileTimeError
+mixin_illegal_super_use_test/07: MissingCompileTimeError
+mixin_illegal_super_use_test/08: MissingCompileTimeError
+mixin_illegal_super_use_test/09: MissingCompileTimeError
+mixin_illegal_super_use_test/10: MissingCompileTimeError
+mixin_illegal_super_use_test/11: MissingCompileTimeError
+mixin_illegal_superclass_test/01: MissingCompileTimeError
+mixin_illegal_superclass_test/02: MissingCompileTimeError
+mixin_illegal_superclass_test/03: MissingCompileTimeError
+mixin_illegal_superclass_test/04: MissingCompileTimeError
+mixin_illegal_superclass_test/05: MissingCompileTimeError
+mixin_illegal_superclass_test/06: MissingCompileTimeError
+mixin_illegal_superclass_test/07: MissingCompileTimeError
+mixin_illegal_superclass_test/08: MissingCompileTimeError
+mixin_illegal_superclass_test/09: MissingCompileTimeError
+mixin_illegal_superclass_test/10: MissingCompileTimeError
+mixin_illegal_superclass_test/11: MissingCompileTimeError
+mixin_illegal_superclass_test/12: MissingCompileTimeError
+mixin_illegal_superclass_test/13: MissingCompileTimeError
+mixin_illegal_superclass_test/14: MissingCompileTimeError
+mixin_illegal_superclass_test/15: MissingCompileTimeError
+mixin_illegal_superclass_test/16: MissingCompileTimeError
+mixin_illegal_superclass_test/17: MissingCompileTimeError
+mixin_illegal_superclass_test/18: MissingCompileTimeError
+mixin_illegal_superclass_test/19: MissingCompileTimeError
+mixin_illegal_superclass_test/20: MissingCompileTimeError
+mixin_illegal_superclass_test/21: MissingCompileTimeError
+mixin_illegal_superclass_test/22: MissingCompileTimeError
+mixin_illegal_superclass_test/23: MissingCompileTimeError
+mixin_illegal_superclass_test/24: MissingCompileTimeError
+mixin_illegal_superclass_test/25: MissingCompileTimeError
+mixin_illegal_superclass_test/26: MissingCompileTimeError
+mixin_illegal_superclass_test/27: MissingCompileTimeError
+mixin_illegal_superclass_test/28: MissingCompileTimeError
+mixin_illegal_superclass_test/29: MissingCompileTimeError
+mixin_illegal_superclass_test/30: MissingCompileTimeError
+mixin_illegal_syntax_test/13: CompileTimeError
+mixin_illegal_syntax_test/none: CompileTimeError
+mixin_mixin2_test: RuntimeError
+mixin_mixin3_test: RuntimeError
+mixin_mixin4_test: RuntimeError
+mixin_mixin5_test: RuntimeError
+mixin_mixin_bound2_test: RuntimeError
+mixin_mixin_bound_test: RuntimeError
+mixin_super_test: RuntimeError
+mixin_type_parameters_simple_test: RuntimeError
+mixin_type_parameters_super_extends_test: RuntimeError
+mixin_type_parameters_super_test: RuntimeError
+multiline_newline_test/01: CompileTimeError
+multiline_newline_test/02: CompileTimeError
+multiline_newline_test/03: CompileTimeError
+multiline_newline_test/04: MissingCompileTimeError
+multiline_newline_test/05: MissingCompileTimeError
+multiline_newline_test/06: MissingCompileTimeError
+multiline_newline_test/none: RuntimeError
+named_parameters_type_test/01: MissingRuntimeError
+named_parameters_type_test/02: MissingRuntimeError
+named_parameters_type_test/03: MissingRuntimeError
+no_main_test/01: Crash
+not_enough_positional_arguments_test/01: CompileTimeError
+not_enough_positional_arguments_test/02: Crash
+not_enough_positional_arguments_test/05: Crash
+null_test/none: RuntimeError
+number_identifier_test/05: RuntimeError
+positional_parameters_type_test/01: MissingRuntimeError
+positional_parameters_type_test/02: MissingRuntimeError
+prefix10_negative_test: Fail
+prefix16_test: RuntimeError
+prefix21_test: RuntimeError
+redirecting_constructor_initializer_test: RuntimeError
+redirecting_factory_default_values_test/none: RuntimeError
+redirecting_factory_reflection_test: RuntimeError
+regress_18713_test: RuntimeError
+regress_22443_test: RuntimeError
+regress_22700_test: RuntimeError
+regress_23408_test: RuntimeError
+regress_27164_test: CompileTimeError
+regress_r24720_test: RuntimeError
+reify_typevar_static_test/00: MissingCompileTimeError
+reify_typevar_test: RuntimeError
+script1_negative_test: Fail
+script2_negative_test: Fail
+setter_no_getter_call_test/none: RuntimeError
+static_setter_get_test/01: RuntimeError
+super_call3_test/01: Crash
+super_call4_test: RuntimeError
+super_getter_setter_test: RuntimeError
+super_no_such_method1_test/01: RuntimeError
+super_no_such_method2_test/01: RuntimeError
+super_no_such_method3_test/01: RuntimeError
+super_no_such_method4_test/01: RuntimeError
+super_no_such_method5_test/01: RuntimeError
+super_operator_index3_test: RuntimeError
+super_operator_index4_test: RuntimeError
+super_operator_index5_test: RuntimeError
+super_operator_index6_test: RuntimeError
+super_operator_index7_test: RuntimeError
+super_operator_index8_test: RuntimeError
+super_test: RuntimeError
+switch7_negative_test: Fail
+switch_try_catch_test: RuntimeError
+sync_generator3_test/test2: RuntimeError
+tearoff_basic_test: CompileTimeError
+tearoff_constructor_basic_test: CompileTimeError
+throw8_test: RuntimeError
+try_catch_on_syntax_test/10: MissingRuntimeError
+try_catch_on_syntax_test/11: MissingRuntimeError
+try_finally_regress_25654_test: RuntimeError
+type_checks_in_factory_method_test: RuntimeError
+type_parameter_literal_test: RuntimeError
+type_parameter_test/04: Crash
+type_variable_conflict2_test/02: MissingCompileTimeError
+type_variable_conflict2_test/06: MissingCompileTimeError
+type_variable_conflict2_test/08: MissingCompileTimeError
+type_variable_conflict2_test/10: MissingCompileTimeError
+type_variable_function_type_test: RuntimeError
+vm/debug_break_enabled_vm_test/01: CompileTimeError
+vm/debug_break_enabled_vm_test/none: CompileTimeError
+vm/optimized_guarded_field_isolates_test: Crash
+vm/reflect_core_vm_test: CompileTimeError
+vm/type_cast_vm_test: RuntimeError
+vm/type_vm_test: RuntimeError
+
+# dartk: precompilation failures
+[ $compiler == dartkp && $runtime == dart_precompiled ]
+accessor_conflict_export2_test: RuntimeError
+accessor_conflict_export_test: RuntimeError
+accessor_conflict_import2_test: RuntimeError
+accessor_conflict_import_prefixed2_test: RuntimeError
+accessor_conflict_import_prefixed_test: RuntimeError
+accessor_conflict_import_test: RuntimeError
+assertion_test: RuntimeError
+async_break_in_finally_test: RuntimeError
+async_control_structures_test: RuntimeError
+async_star_cancel_and_throw_in_finally_test: RuntimeError
+async_star_cancel_while_paused_test: RuntimeError
+async_star_regression_fisk_test: Crash
+async_star_stream_take_test: Timeout
+async_star_take_reyield_test: Timeout
+async_star_test: Crash
+async_throw_in_catch_test/forceAwait: RuntimeError
+async_throw_in_catch_test/none: RuntimeError
+asyncstar_throw_in_catch_test: Timeout
+asyncstar_yield_test: Timeout
+asyncstar_yieldstar_test: Timeout
+await_exceptions_test: RuntimeError
+await_future_test: RuntimeError
+await_regression_test: RuntimeError
+bad_constructor_test/05: CompileTimeError
+bad_raw_string_negative_test: Fail
+cha_deopt1_test: RuntimeError
+cha_deopt2_test: RuntimeError
+cha_deopt3_test: RuntimeError
+closure_type_variable_test: RuntimeError
+closures_initializer_test: RuntimeError
+compile_time_constant12_test: Crash
+compile_time_constant_k_test/01: RuntimeError
+compile_time_constant_k_test/02: RuntimeError
+compile_time_constant_k_test/03: RuntimeError
+compile_time_constant_o_test/01: RuntimeError
+compile_time_constant_o_test/02: RuntimeError
+config_import_test: RuntimeError
+conflicting_type_variable_and_setter_test: CompileTimeError
+const_dynamic_type_literal_test/02: RuntimeError
+const_error_multiply_initialized_test/02: RuntimeError
+const_error_multiply_initialized_test/04: RuntimeError
+const_evaluation_test/01: Crash
+const_for_in_variable_test/01: MissingCompileTimeError
+const_nested_test: RuntimeError
+constructor2_test: RuntimeError
+constructor3_test: RuntimeError
+constructor5_test: RuntimeError
+constructor6_test: RuntimeError
+constructor_duplicate_final_test/01: MissingRuntimeError
+constructor_duplicate_final_test/02: MissingRuntimeError
+constructor_duplicate_final_test/03: MissingCompileTimeError
+constructor_named_arguments_test/01: Crash
+cyclic_type2_test: CompileTimeError
+cyclic_type_test/00: RuntimeError
+cyclic_type_test/01: RuntimeError
+cyclic_type_test/02: CompileTimeError
+cyclic_type_test/03: RuntimeError
+cyclic_type_test/04: CompileTimeError
+cyclic_type_variable_test/01: Crash
+cyclic_type_variable_test/02: Crash
+cyclic_type_variable_test/03: Crash
+cyclic_type_variable_test/04: Crash
+cyclic_type_variable_test/none: Crash
+deep_nesting1_negative_test: Crash
+deep_nesting2_negative_test: Crash
+deferred_call_empty_before_load_test: RuntimeError
+deferred_closurize_load_library_test: Crash
+deferred_constant_list_test: RuntimeError
+deferred_constraints_constants_test/none: RuntimeError
+deferred_constraints_constants_test/reference_after_load: RuntimeError
+deferred_constraints_type_annotation_test/as_operation: RuntimeError
+deferred_constraints_type_annotation_test/catch_check: RuntimeError
+deferred_constraints_type_annotation_test/is_check: RuntimeError
+deferred_constraints_type_annotation_test/new: RuntimeError
+deferred_constraints_type_annotation_test/new_before_load: RuntimeError
+deferred_constraints_type_annotation_test/new_generic1: RuntimeError
+deferred_constraints_type_annotation_test/new_generic2: RuntimeError
+deferred_constraints_type_annotation_test/new_generic3: RuntimeError
+deferred_constraints_type_annotation_test/none: RuntimeError
+deferred_constraints_type_annotation_test/static_method: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation1: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_generic1: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_generic2: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_generic3: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_generic4: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_non_deferred: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_null: RuntimeError
+deferred_constraints_type_annotation_test/type_annotation_top_level: RuntimeError
+deferred_function_type_test: RuntimeError
+deferred_global_test: RuntimeError
+deferred_import_core_test: RuntimeError
+deferred_inheritance_constraints_test/redirecting_constructor: RuntimeError
+deferred_inlined_test: RuntimeError
+deferred_load_constants_test/none: RuntimeError
+deferred_load_inval_code_test: RuntimeError
+deferred_load_library_wrong_args_test/none: RuntimeError
+deferred_mixin_test: RuntimeError
+deferred_no_such_method_test: RuntimeError
+deferred_not_loaded_check_test: RuntimeError
+deferred_only_constant_test: RuntimeError
+deferred_optimized_test: RuntimeError
+deferred_redirecting_factory_test: RuntimeError
+deferred_regression_22995_test: RuntimeError
+deferred_shadow_load_library_test: RuntimeError
+deferred_shared_and_unshared_classes_test: RuntimeError
+deferred_static_seperate_test: RuntimeError
+deferred_super_dependency_test/01: RuntimeError
+deferred_type_dependency_test/as: RuntimeError
+deferred_type_dependency_test/is: RuntimeError
+deferred_type_dependency_test/none: RuntimeError
+deferred_type_dependency_test/type_annotation: RuntimeError
+duplicate_export_negative_test: Fail
+enum_duplicate_test/01: RuntimeError
+enum_duplicate_test/02: RuntimeError
+enum_duplicate_test/none: RuntimeError
+enum_mirror_test: RuntimeError
+enum_private_test/01: RuntimeError
+enum_private_test/02: RuntimeError
+enum_private_test/none: RuntimeError
+enum_syntax_test/06: MissingCompileTimeError
+enum_test: RuntimeError
+evaluation_redirecting_constructor_test: RuntimeError
+example_constructor_test: RuntimeError
+execute_finally8_test: RuntimeError
+execute_finally9_test: RuntimeError
+export_double_same_main_test: Crash
+export_main_test: Crash
+external_test/10: MissingRuntimeError
+external_test/13: MissingRuntimeError
+external_test/20: MissingRuntimeError
+external_test/21: MissingCompileTimeError
+external_test/24: MissingCompileTimeError
+external_test/25: MissingCompileTimeError
+f_bounded_equality_test: RuntimeError
+field_initialization_order_test: RuntimeError
+final_field_initialization_order_test: RuntimeError
+final_super_field_set_test/01: RuntimeError
+final_syntax_test/01: MissingCompileTimeError
+final_syntax_test/02: MissingCompileTimeError
+final_syntax_test/03: MissingCompileTimeError
+final_syntax_test/04: MissingCompileTimeError
+fixed_type_variable2_test/02: RuntimeError
+fixed_type_variable2_test/04: RuntimeError
+fixed_type_variable2_test/06: RuntimeError
+fixed_type_variable_test/01: RuntimeError
+fixed_type_variable_test/02: RuntimeError
+fixed_type_variable_test/03: RuntimeError
+fixed_type_variable_test/04: RuntimeError
+fixed_type_variable_test/05: RuntimeError
+fixed_type_variable_test/06: RuntimeError
+for2_test: RuntimeError
+for_variable_capture_test: RuntimeError
+forwarding_factory_constructor_default_values_test: RuntimeError
+full_stacktrace1_test: RuntimeError
+full_stacktrace2_test: RuntimeError
+full_stacktrace3_test: RuntimeError
+function_subtype2_test: RuntimeError
+function_subtype_bound_closure3_test: RuntimeError
+function_subtype_bound_closure4_test: RuntimeError
+function_subtype_cast1_test: RuntimeError
+function_subtype_inline0_test: RuntimeError
+function_subtype_local3_test: RuntimeError
+function_subtype_local4_test: RuntimeError
+function_subtype_not1_test: RuntimeError
+function_type_alias2_test: RuntimeError
+function_type_alias3_test: RuntimeError
+function_type_alias4_test: RuntimeError
+generic2_test: RuntimeError
+generic_closure_test: RuntimeError
+generic_creation_test: RuntimeError
+generic_field_mixin2_test: RuntimeError
+generic_field_mixin4_test: RuntimeError
+generic_field_mixin5_test: RuntimeError
+generic_functions_test: CompileTimeError
+generic_inheritance_test: RuntimeError
+generic_local_functions_test: CompileTimeError
+generic_methods_function_type_test: CompileTimeError
+generic_methods_new_test: CompileTimeError
+generic_methods_test: CompileTimeError
+generic_methods_type_expression_test: CompileTimeError
+generic_sends_test: CompileTimeError
+generic_test: RuntimeError
+getter_closure_execution_order_test: RuntimeError
+getter_setter_in_lib_test: RuntimeError
+if_null_assignment_static_test/35: Crash
+inferrer_closure_test: RuntimeError
+initializing_formal_access_test: CompileTimeError
+initializing_formal_capture_test: CompileTimeError
+initializing_formal_final_test: CompileTimeError
+initializing_formal_type_test: CompileTimeError
+instance_creation_in_function_annotation_test: Crash
+invocation_mirror_invoke_on2_test: Crash
+invocation_mirror_test: Crash
+is_not_class2_test: RuntimeError
+issue13474_test: RuntimeError
+issue21079_test: Crash
+issue22800_test: Crash
+issue_1751477_test: RuntimeError
+large_class_declaration_test: Timeout
+least_upper_bound_expansive_test/01: CompileTimeError
+least_upper_bound_expansive_test/02: CompileTimeError
+least_upper_bound_expansive_test/03: CompileTimeError
+least_upper_bound_expansive_test/04: CompileTimeError
+least_upper_bound_expansive_test/05: CompileTimeError
+least_upper_bound_expansive_test/06: CompileTimeError
+least_upper_bound_expansive_test/07: CompileTimeError
+least_upper_bound_expansive_test/08: CompileTimeError
+least_upper_bound_expansive_test/09: CompileTimeError
+least_upper_bound_expansive_test/10: CompileTimeError
+least_upper_bound_expansive_test/11: CompileTimeError
+least_upper_bound_expansive_test/12: CompileTimeError
+least_upper_bound_expansive_test/none: CompileTimeError
+library_env_test/has_html_support: RuntimeError
+library_env_test/has_mirror_support: RuntimeError
+library_env_test/has_no_io_support: RuntimeError
+list_literal4_test: RuntimeError
+main_not_a_function_test/01: Crash
+malformed_test/none: RuntimeError
+map_literal3_test: RuntimeError
+map_literal4_test: RuntimeError
+map_literal6_test: RuntimeError
+metadata_test: CompileTimeError
+method_override_test: RuntimeError
+mixin_generic_test: RuntimeError
+mixin_illegal_super_use_test/01: MissingCompileTimeError
+mixin_illegal_super_use_test/02: MissingCompileTimeError
+mixin_illegal_super_use_test/03: MissingCompileTimeError
+mixin_illegal_super_use_test/04: MissingCompileTimeError
+mixin_illegal_super_use_test/05: MissingCompileTimeError
+mixin_illegal_super_use_test/06: MissingCompileTimeError
+mixin_illegal_super_use_test/07: MissingCompileTimeError
+mixin_illegal_super_use_test/08: MissingCompileTimeError
+mixin_illegal_super_use_test/09: MissingCompileTimeError
+mixin_illegal_super_use_test/10: MissingCompileTimeError
+mixin_illegal_super_use_test/11: MissingCompileTimeError
+mixin_illegal_superclass_test/01: MissingCompileTimeError
+mixin_illegal_superclass_test/02: MissingCompileTimeError
+mixin_illegal_superclass_test/03: MissingCompileTimeError
+mixin_illegal_superclass_test/04: MissingCompileTimeError
+mixin_illegal_superclass_test/05: MissingCompileTimeError
+mixin_illegal_superclass_test/06: MissingCompileTimeError
+mixin_illegal_superclass_test/07: MissingCompileTimeError
+mixin_illegal_superclass_test/08: MissingCompileTimeError
+mixin_illegal_superclass_test/09: MissingCompileTimeError
+mixin_illegal_superclass_test/10: MissingCompileTimeError
+mixin_illegal_superclass_test/11: MissingCompileTimeError
+mixin_illegal_superclass_test/12: MissingCompileTimeError
+mixin_illegal_superclass_test/13: MissingCompileTimeError
+mixin_illegal_superclass_test/14: MissingCompileTimeError
+mixin_illegal_superclass_test/15: MissingCompileTimeError
+mixin_illegal_superclass_test/16: MissingCompileTimeError
+mixin_illegal_superclass_test/17: MissingCompileTimeError
+mixin_illegal_superclass_test/18: MissingCompileTimeError
+mixin_illegal_superclass_test/19: MissingCompileTimeError
+mixin_illegal_superclass_test/20: MissingCompileTimeError
+mixin_illegal_superclass_test/21: MissingCompileTimeError
+mixin_illegal_superclass_test/22: MissingCompileTimeError
+mixin_illegal_superclass_test/23: MissingCompileTimeError
+mixin_illegal_superclass_test/24: MissingCompileTimeError
+mixin_illegal_superclass_test/25: MissingCompileTimeError
+mixin_illegal_superclass_test/26: MissingCompileTimeError
+mixin_illegal_superclass_test/27: MissingCompileTimeError
+mixin_illegal_superclass_test/28: MissingCompileTimeError
+mixin_illegal_superclass_test/29: MissingCompileTimeError
+mixin_illegal_superclass_test/30: MissingCompileTimeError
+mixin_illegal_syntax_test/13: CompileTimeError
+mixin_illegal_syntax_test/none: CompileTimeError
+mixin_mixin2_test: RuntimeError
+mixin_mixin3_test: RuntimeError
+mixin_mixin4_test: RuntimeError
+mixin_mixin5_test: RuntimeError
+mixin_mixin_bound2_test: RuntimeError
+mixin_mixin_bound_test: RuntimeError
+mixin_super_test: RuntimeError
+mixin_type_parameters_simple_test: RuntimeError
+mixin_type_parameters_super_extends_test: RuntimeError
+mixin_type_parameters_super_test: RuntimeError
+multiline_newline_test/01: CompileTimeError
+multiline_newline_test/02: CompileTimeError
+multiline_newline_test/03: CompileTimeError
+multiline_newline_test/04: MissingCompileTimeError
+multiline_newline_test/05: MissingCompileTimeError
+multiline_newline_test/06: MissingCompileTimeError
+multiline_newline_test/none: RuntimeError
+named_parameters_type_test/01: MissingRuntimeError
+named_parameters_type_test/02: MissingRuntimeError
+named_parameters_type_test/03: MissingRuntimeError
+no_main_test/01: Crash
+not_enough_positional_arguments_test/01: CompileTimeError
+not_enough_positional_arguments_test/02: MissingRuntimeError
+not_enough_positional_arguments_test/05: Crash
+null_test/none: RuntimeError
+number_identifier_test/05: RuntimeError
+positional_parameters_type_test/01: MissingRuntimeError
+positional_parameters_type_test/02: MissingRuntimeError
+prefix10_negative_test: Fail
+prefix16_test: RuntimeError
+prefix21_test: RuntimeError
+redirecting_constructor_initializer_test: RuntimeError
+redirecting_factory_default_values_test/none: RuntimeError
+redirecting_factory_reflection_test: Crash
+regress_18535_test: Crash
+regress_18713_test: RuntimeError
+regress_22443_test: RuntimeError
+regress_22700_test: RuntimeError
+regress_22777_test: Crash
+regress_23408_test: RuntimeError
+regress_26175_test: Crash
+regress_27164_test: CompileTimeError
+regress_r24720_test: RuntimeError
+reify_typevar_test: RuntimeError
+script1_negative_test: Fail
+script2_negative_test: Fail
+setter_no_getter_call_test/none: RuntimeError
+stack_trace_test: RuntimeError
+stacktrace_rethrow_error_test/none: RuntimeError
+stacktrace_rethrow_error_test/withtraceparameter: RuntimeError
+stacktrace_rethrow_nonerror_test: RuntimeError
+static_setter_get_test/01: RuntimeError
+super_call3_test/01: Crash
+super_call4_test: RuntimeError
+super_getter_setter_test: RuntimeError
+super_no_such_method1_test/01: RuntimeError
+super_no_such_method2_test/01: RuntimeError
+super_no_such_method3_test/01: RuntimeError
+super_no_such_method4_test/01: RuntimeError
+super_no_such_method5_test/01: RuntimeError
+super_operator_index3_test: RuntimeError
+super_operator_index4_test: RuntimeError
+super_operator_index5_test: RuntimeError
+super_operator_index6_test: RuntimeError
+super_operator_index7_test: RuntimeError
+super_operator_index8_test: RuntimeError
+super_test: RuntimeError
+switch7_negative_test: Fail
+switch_try_catch_test: RuntimeError
+sync_generator3_test/test2: RuntimeError
+tearoff_basic_test: CompileTimeError
+tearoff_constructor_basic_test: CompileTimeError
+throw8_test: RuntimeError
+try_catch_on_syntax_test/10: MissingRuntimeError
+try_catch_on_syntax_test/11: MissingRuntimeError
+try_finally_regress_25654_test: RuntimeError
+type_checks_in_factory_method_test: RuntimeError
+type_parameter_literal_test: RuntimeError
+type_parameter_test/04: Crash
+type_variable_conflict2_test/02: MissingCompileTimeError
+type_variable_function_type_test: RuntimeError
+vm/debug_break_enabled_vm_test/01: CompileTimeError
+vm/debug_break_enabled_vm_test/none: CompileTimeError
+vm/reflect_core_vm_test: CompileTimeError
+vm/type_cast_vm_test: RuntimeError
+vm/type_vm_test: RuntimeError
diff --git a/tests/language/regress_27659_test.dart b/tests/language/regress_27659_test.dart
new file mode 100644
index 0000000..e40a886
--- /dev/null
+++ b/tests/language/regress_27659_test.dart
@@ -0,0 +1,28 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+const String lineLength = '120';
+
+foo({lineLength: lineLength}) {
+  print(lineLength);
+}
+
+bar({lineLength: lineLength}) async {
+  print(lineLength);
+}
+
+baz([lineLength = lineLength]) {
+  print(lineLength);
+}
+
+qux([lineLength = lineLength]) async {
+  print(lineLength);
+}
+
+main() {
+  foo();
+  bar();
+  baz();
+  qux();
+}
diff --git a/tests/language/switch_case_warn_test.dart b/tests/language/switch_case_warn_test.dart
new file mode 100644
index 0000000..4447bd7
--- /dev/null
+++ b/tests/language/switch_case_warn_test.dart
@@ -0,0 +1,205 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+// Test switch statement.
+
+// Tests some switch-case statements blocks that should and should not
+// cause static warnings.
+// This test is not testing runtime behavior, only static warnings.
+
+// None of the cases blocks should cause a warning.
+void testSwitch(int x) {
+  // Catch all control flow leaving the switch.
+  // Run switch in catch clause to check rethrow.
+  TRY: try {
+    throw x;
+  } catch (x) {
+    // Add loop as break/continue target.
+    LOOP: do {
+      switch (x) {
+        case 0:
+        case 1:
+          nop(x);
+          break;  // Break switch.
+        case 2:
+          nop(x);
+          break LOOP;
+        case 3:
+          nop(x);
+          continue;  // Continue loop.
+        case 4:
+          nop(x);
+          continue LOOP;
+        case 5:
+          nop(x);
+          continue LAST;
+        // Avoid warning for "return;"" and "return e;" in same function.
+        case 6:      /// retnon: ok
+          nop(x);    /// retnon: continued
+          return;    /// retnon: continued
+        case 7:      /// retval: ok
+          nop(x);    /// retval: continued
+          return x;  /// retval: continued
+        case 8:
+          nop(x);
+          throw x;
+        case 9:
+          nop(x);
+          rethrow;
+        case 10:
+        case 11: {
+          nop(x);
+          break;  // Break switch.
+        }
+        case 12: {
+          nop(x);
+          break LOOP;
+        }
+        case 13: {
+          nop(x);
+          continue;  // Continue loop.
+        }
+        case 14: {
+          nop(x);
+          continue LOOP;
+        }
+        case 15: {
+          nop(x);
+          continue LAST;
+        }
+        case 16: {   /// retnon: continued
+          nop(x);    /// retnon: continued
+          return;    /// retnon: continued
+        }            /// retnon: continued
+        case 17: {   /// retval: continued
+          nop(x);    /// retval: continued
+          return x;  /// retval: continued
+        }            /// retval: continued
+        case 18: {
+          nop(x);
+          throw x;
+        }
+        case 19: {
+          nop(x);
+          rethrow;
+        }
+        LAST:
+        case 20: {
+          nop(x);
+          // Fallthrough allowed on last statements.
+        }
+      }
+    } while (false);
+  } finally {
+    // Catch all control flow leaving the switch and ignore it.
+    // Use break instead of return to avoid warning for `return` and `return e`
+    // in same function.
+    break TRY;
+  }
+}
+
+// All these switch cases should cause warnings.
+void testSwitchWarn(x) {
+  // Catch all control flow from the switch and ignore it.
+  TRY: try {
+    throw 0;
+  } catch (e) {
+    // Wrap in loop as target for continue/break.
+    LOOP: do {
+      switch (x) {
+        case 0:                          /// 01: static type warning
+        case 1: {                        /// 01: continued
+          {                              /// 01: continued
+            nop(x);                      /// 01: continued
+            break;  // Break switch.     /// 01: continued
+          }                              /// 01: continued
+        }                                /// 01: continued
+        case 2: {                        /// 02: static type warning
+          {                              /// 02: continued
+            nop(x);                      /// 02: continued
+            break LOOP;                  /// 02: continued
+          }                              /// 02: continued
+        }                                /// 02: continued
+        case 3: {                        /// 03: static type warning
+          {                              /// 03: continued
+            nop(x);                      /// 03: continued
+            continue;  // Continue loop. /// 03: continued
+          }                              /// 03: continued
+        }                                /// 03: continued
+        case 4: {                        /// 04: static type warning
+          {                              /// 04: continued
+            nop(x);                      /// 04: continued
+            continue LOOP;               /// 04: continued
+          }                              /// 04: continued
+        }                                /// 04: continued
+        case 5: {                        /// 05: static type warning
+          {                              /// 05: continued
+            nop(x);                      /// 05: continued
+            continue LAST;               /// 05: continued
+          }                              /// 05: continued
+        }                                /// 05: continued
+        case 6: {                        /// 06: static type warning
+          {                              /// 06: continued
+            nop(x);                      /// 06: continued
+            return;                      /// 06: continued
+          }                              /// 06: continued
+        }                                /// 06: continued
+        case 7: {                        /// 07: static type warning
+          {                              /// 07: continued
+            nop(x);                      /// 07: continued
+            return x;                    /// 07: continued
+          }                              /// 07: continued
+        }                                /// 07: continued
+        case 8: {                        /// 08: static type warning
+          {                              /// 08: continued
+            nop(x);                      /// 08: continued
+            throw x;                     /// 08: continued
+          }                              /// 08: continued
+        }                                /// 08: continued
+        case 9: {                        /// 09: static type warning
+          {                              /// 09: continued
+            nop(x);                      /// 09: continued
+            rethrow;                     /// 09: continued
+          }                              /// 09: continued
+        }                                /// 09: continued
+        case 10:                         /// 10: static type warning
+          while (true) break;            /// 10: continued
+        case 11:                         /// 11: static type warning
+          do break; while (true);        /// 11: continued
+        case 12:                         /// 12: static type warning
+          for (;;) break;                /// 12: continued
+        case 13:                         /// 13: static type warning
+          for (var _ in []) break;       /// 13: continued
+        case 14:                         /// 14: static type warning
+          if (x) break; else break;      /// 14: continued
+        case 15:                         /// 15: static type warning
+          (throw 0);                     /// 15: continued
+        case 16:                         /// 16: static type warning
+          nop(x);      // fallthrough.   /// 16: continued
+        case 17:                         /// 17: static type warning
+          L: break;                      /// 17: continued
+        LAST:
+        case 99:
+          // Last case can't cause static warning.
+      }
+    } while (false);
+  } finally {
+    // Catch all control flow leaving the switch and ignore it.
+    // Use break instead of return to avoid warning for `return` and `return e`
+    // in same function.
+    break TRY;
+  }
+}
+
+main() {
+  // Ensure that all the cases compile and run (even if they might throw).
+  for (int i = 0; i <= 20; i++) {
+    testSwitch(i);  // Just make sure it runs.
+  }
+  for (int i = 0; i <= 18; i++) {
+    testSwitchWarn(i);
+  }
+}
+
+/// Don't make it obvious that a switch case isn't doing anything.
+void nop(x) {}
diff --git a/tests/language/vm/regress_27671_other.dart b/tests/language/vm/regress_27671_other.dart
new file mode 100644
index 0000000..a180d18
--- /dev/null
+++ b/tests/language/vm/regress_27671_other.dart
@@ -0,0 +1,10 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'regress_27671_test.dart';
+
+@AlwaysInline
+void check(f, x) {
+  assert(f(x) && true);
+}
diff --git a/tests/language/vm/regress_27671_test.dart b/tests/language/vm/regress_27671_test.dart
new file mode 100644
index 0000000..fa258da
--- /dev/null
+++ b/tests/language/vm/regress_27671_test.dart
@@ -0,0 +1,32 @@
+// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+//
+// VMOptions=--enable_asserts --enable-inlining-annotations --optimization-counter-threshold=10 --no-background-compilation
+
+import 'package:expect/expect.dart';
+import 'regress_27671_other.dart';
+
+const AlwaysInline = "AlwaysInline";
+const NeverInline = "NeverInline";
+
+@AlwaysInline
+bounce(x) {
+  for (int i = 0; i < 10; i++) {
+    check(f, x);
+  }
+}
+
+@AlwaysInline
+bool f(y) => y > 0;
+
+main() {
+  for (int i = 0; i < 100; i++) {
+    bounce(1);
+  }
+  try {
+    bounce(-1);
+  } catch (e) {
+    Expect.isTrue(e.toString().contains('f(x) && true'));
+  }
+}
diff --git a/tests/standalone/packages_file_test.dart b/tests/standalone/packages_file_test.dart
index d41e46b..b36bc83 100644
--- a/tests/standalone/packages_file_test.dart
+++ b/tests/standalone/packages_file_test.dart
@@ -209,7 +209,7 @@
 // * A variable defined in a library loaded using a `package:` URI.
 //
 // The configurations all have URIs as `root`, `config` and `mainFile` strings,
-// have empty argument lists and `mainFile` points to the the `main.dart` file.
+// have empty argument lists and `mainFile` points to the `main.dart` file.
 void createConfigurations() {
   add(String description, String mainDir, {String root, String config,
       Map file, Map http, Map expect}) {
diff --git a/third_party/tcmalloc/BUILD.gn b/third_party/tcmalloc/BUILD.gn
index ec423be..8568429 100644
--- a/third_party/tcmalloc/BUILD.gn
+++ b/third_party/tcmalloc/BUILD.gn
@@ -30,9 +30,7 @@
     "-fno-builtin-pvalloc",
   ]
   if (is_clang) {
-    cflags += [
-      "-Wno-unused-const-variable",
-    ]
+    cflags += [ "-Wno-unused-const-variable" ]
   }
 }
 
@@ -62,19 +60,18 @@
 }
 
 tcmalloc_sources_list = exec_script("../../tools/gypi_to_gn.py",
-                              [rebase_path("tcmalloc_sources.gypi")],
-                              "scope",
-                              ["tcmalloc_sources.gypi"])
-
+                                    [ rebase_path("tcmalloc_sources.gypi") ],
+                                    "scope",
+                                    [ "tcmalloc_sources.gypi" ])
 
 source_set("tcmalloc") {
   configs -= [ "//build/config/compiler:chromium_code" ]
   configs += [ ":internal_config" ]
 
-  public_configs = [":link_config"]
+  public_configs = [ ":link_config" ]
 
   deps = [
-    ":dynamic_annotations"
+    ":dynamic_annotations",
   ]
 
   include_dirs = [
@@ -87,15 +84,14 @@
   defines = [
     "ENABLE_EMERGENCY_MALLOC",
     "NO_HEAP_CHECK",
+
     # Disable debug even in a Dart Debug build. It is too slow.
     "NDEBUG",
   ]
 
   # Disable stack sampling for heap profiling in Product builds.
   if (is_product) {
-    defines += [
-      "NO_TCMALLOC_SAMPLES",
-    ]
+    defines += [ "NO_TCMALLOC_SAMPLES" ]
   }
 
   cflags = [
@@ -106,25 +102,25 @@
   ]
 
   if (!is_clang && current_cpu == "x86") {
-    cflags += [
-      "-Wno-format"
-    ]
+    cflags += [ "-Wno-format" ]
   }
 
   set_sources_assignment_filter([
-    # No debug allocator.
-    "gperftools/src/debugallocation.cc",
-    # Not needed when using emergency malloc.
-    "gperftools/src/fake_stacktrace_scope.cc",
-    # Not using the cpuprofiler
-    "gperftools/src/base/thread_lister.c",
-    "gperftools/src/base/thread_lister.h",
-    "gperftools/src/profile-handler.cc",
-    "gperftools/src/profile-handler.h",
-    "gperftools/src/profiledata.cc",
-    "gperftools/src/profiledata.h",
-    "gperftools/src/profiler.cc",
-  ])
+                                  # No debug allocator.
+                                  "gperftools/src/debugallocation.cc",
+
+                                  # Not needed when using emergency malloc.
+                                  "gperftools/src/fake_stacktrace_scope.cc",
+
+                                  # Not using the cpuprofiler
+                                  "gperftools/src/base/thread_lister.c",
+                                  "gperftools/src/base/thread_lister.h",
+                                  "gperftools/src/profile-handler.cc",
+                                  "gperftools/src/profile-handler.h",
+                                  "gperftools/src/profiledata.cc",
+                                  "gperftools/src/profiledata.h",
+                                  "gperftools/src/profiler.cc",
+                                ])
 
   sources = tcmalloc_sources_list.sources
 }
diff --git a/tools/VERSION b/tools/VERSION
index 8674007..d489bbc 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -28,5 +28,5 @@
 MAJOR 1
 MINOR 21
 PATCH 0
-PRERELEASE 2
+PRERELEASE 3
 PRERELEASE_PATCH 0
diff --git a/tools/build.py b/tools/build.py
index 4f5d2e1..0858c27 100755
--- a/tools/build.py
+++ b/tools/build.py
@@ -408,6 +408,7 @@
     '-m', mode,
     '-a', arch,
     '--os', gn_os,
+    '--check',
     '-v',
   ]
   process = subprocess.Popen(gn_command)
diff --git a/tools/dom/src/Dimension.dart b/tools/dom/src/Dimension.dart
index 96014c3..6286ae9 100644
--- a/tools/dom/src/Dimension.dart
+++ b/tools/dom/src/Dimension.dart
@@ -43,7 +43,7 @@
   /**
    * Set this CSS Dimension to the specified number of x-heights.
    *
-   * One ex is equal to the the x-height of a font's baseline to its mean line,
+   * One ex is equal to the x-height of a font's baseline to its mean line,
    * generally the height of the letter "x" in the font, which is usually about
    * half the font-size.
    */
diff --git a/tools/gn.py b/tools/gn.py
index 2f8d664..6155b8d 100755
--- a/tools/gn.py
+++ b/tools/gn.py
@@ -91,6 +91,9 @@
   gn_args['dart_use_tcmalloc'] = (gn_args['target_os'] == 'linux'
                                   and not args.asan)
 
+  if gn_args['target_cpu'].startswith('arm'):
+    gn_args['arm_float_abi'] = 'hard'
+
   gn_args['is_debug'] = mode == 'debug'
   gn_args['is_release'] = mode == 'release'
   gn_args['is_product'] = mode == 'product'
diff --git a/tools/list_dart_files.py b/tools/list_dart_files.py
old mode 100644
new mode 100755
diff --git a/tools/patch_sdk.dart b/tools/patch_sdk.dart
new file mode 100644
index 0000000..3bb9965
--- /dev/null
+++ b/tools/patch_sdk.dart
@@ -0,0 +1,536 @@
+#!/usr/bin/env dart
+// Copyright (c) 2015, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+/// Command line tool to merge the SDK libraries and our patch files.
+/// This is currently designed as an offline tool, but we could automate it.
+
+import 'dart:io';
+import 'dart:math' as math;
+
+import 'package:analyzer/analyzer.dart';
+import 'package:analyzer/src/generated/sdk.dart';
+import 'package:path/path.dart' as path;
+
+void main(List<String> argv) {
+  var base = path.fromUri(Platform.script);
+  var dartDir = path.dirname(path.dirname(path.absolute(base)));
+
+  if (argv.length != 4 ||
+      !argv.isEmpty && argv.first != 'vm' && argv.first != 'ddc') {
+    var self = path.relative(base);
+    print('Usage: $self MODE SDK_DIR PATCH_DIR OUTPUT_DIR');
+    print('MODE must be one of ddc or vm.');
+
+    var toolDir = path.relative(path.dirname(base));
+    var sdkExample = path.join(toolDir, 'input_sdk');
+    var patchExample = path.join(sdkExample, 'patch');
+    var outExample =
+        path.relative(path.normalize(path.join('gen', 'patched_sdk')));
+    print('For example:');
+    print('\$ $self ddc $sdkExample $patchExample $outExample');
+
+    var repositoryDir = path.relative(path.dirname(path.dirname(base)));
+    sdkExample = path.relative(path.join(repositoryDir, 'sdk'));
+    patchExample = path.relative(path.join(repositoryDir, 'out', 'DebugX64',
+                                           'obj', 'gen', 'patch'));
+    outExample = path.relative(path.join(repositoryDir, 'out', 'DebugX64',
+                                         'obj', 'gen', 'patched_sdk'));
+    print('or:');
+    print('\$ $self vm $sdkExample $patchExample $outExample');
+
+    exit(1);
+  }
+
+  var mode = argv[0];
+  var input = argv[1];
+  var sdkLibIn = path.join(input, 'lib');
+  var patchIn = argv[2];
+  var sdkOut = path.join(argv[3], 'lib');
+
+  var privateIn = path.join(input, 'private');
+  var INTERNAL_PATH = '_internal/compiler/js_lib/';
+
+  // Copy and patch libraries.dart and version
+  var libContents = new File(path.join(sdkLibIn, '_internal',
+      'sdk_library_metadata', 'lib', 'libraries.dart')).readAsStringSync();
+  var patchedLibContents = libContents;
+  if (mode == 'vm') {
+    libContents = libContents.replaceAll(
+        ' libraries = const {',
+        ''' libraries = const {
+
+  "_builtin": const LibraryInfo(
+      "_builtin/_builtin.dart",
+      categories: "Client,Server",
+      implementation: true,
+      documented: false,
+      platforms: VM_PLATFORM),
+
+  "profiler": const LibraryInfo(
+      "profiler/profiler.dart",
+      maturity: Maturity.DEPRECATED,
+      documented: false),
+
+  "_vmservice": const LibraryInfo(
+      "vmservice/vmservice.dart",
+      implementation: true,
+      documented: false,
+      platforms: VM_PLATFORM),
+
+  "vmservice_io": const LibraryInfo(
+      "vmservice_io/vmservice_io.dart",
+      implementation: true,
+      documented: false,
+      platforms: VM_PLATFORM),
+
+''');
+  }
+  _writeSync(
+      path.join(
+          sdkOut, '_internal', 'sdk_library_metadata', 'lib', 'libraries.dart'),
+      libContents);
+  if (mode == 'ddc') {
+    _writeSync(path.join(sdkOut, '..', 'version'),
+        new File(path.join(sdkLibIn, '..', 'version')).readAsStringSync());
+  }
+
+  // Parse libraries.dart
+  var sdkLibraries = _getSdkLibraries(libContents);
+
+  // Enumerate core libraries and apply patches
+  for (SdkLibrary library in sdkLibraries) {
+    // TODO(jmesserly): analyzer does not handle the default case of
+    // "both platforms" correctly, and treats it as being supported on neither.
+    // So instead we skip explicitly marked as either VM or dart2js libs.
+    if (mode == 'ddc' ? libary.isVmLibrary : library.isDart2JsLibrary) {
+      continue;
+    }
+
+    var libraryOut = path.join(sdkLibIn, library.path);
+    var libraryIn;
+    if (mode == 'vm' && library.path.contains('typed_data.dart')) {
+      // dart:typed_data is unlike the other libraries in the SDK. The VM does
+      // not apply a patch to the base SDK implementation of the library.
+      // Instead, the VM provides a replacement implementation and ignores the
+      // sources in the SDK.
+      libraryIn =
+          path.join(dartDir, 'runtime', 'lib', 'typed_data.dart');
+    } else if (mode == 'ddc' && library.path.contains(INTERNAL_PATH)) {
+      libraryIn =
+          path.join(privateIn, library.path.replaceAll(INTERNAL_PATH, ''));
+    } else {
+      libraryIn = libraryOut;
+    }
+
+    var libraryFile = new File(libraryIn);
+    if (libraryFile.existsSync()) {
+      var outPaths = <String>[libraryOut];
+      var libraryContents = libraryFile.readAsStringSync();
+
+      int inputModifyTime =
+          libraryFile.lastModifiedSync().millisecondsSinceEpoch;
+      var partFiles = <File>[];
+      for (var part in parseDirectives(libraryContents).directives) {
+        if (part is PartDirective) {
+          var partPath = part.uri.stringValue;
+          outPaths.add(path.join(path.dirname(libraryOut), partPath));
+
+          var partFile = new File(path.join(path.dirname(libraryIn), partPath));
+          partFiles.add(partFile);
+          inputModifyTime = math.max(inputModifyTime,
+              partFile.lastModifiedSync().millisecondsSinceEpoch);
+        }
+      }
+
+      // See if we can find a patch file.
+      var patchPath = path.join(
+          patchIn, path.basenameWithoutExtension(libraryIn) + '_patch.dart');
+
+      var patchFile = new File(patchPath);
+      bool patchExists = patchFile.existsSync();
+      if (patchExists) {
+        inputModifyTime = math.max(inputModifyTime,
+            patchFile.lastModifiedSync().millisecondsSinceEpoch);
+      }
+
+      // Compute output paths
+      outPaths = outPaths
+          .map((p) => path.join(sdkOut, path.relative(p, from: sdkLibIn)))
+          .toList();
+
+      // Compare output modify time with input modify time.
+      bool needsUpdate = false;
+      for (var outPath in outPaths) {
+        var outFile = new File(outPath);
+        if (!outFile.existsSync() ||
+            outFile.lastModifiedSync().millisecondsSinceEpoch <
+                inputModifyTime) {
+          needsUpdate = true;
+          break;
+        }
+      }
+
+      if (needsUpdate) {
+        var contents = <String>[libraryContents];
+        contents.addAll(partFiles.map((f) => f.readAsStringSync()));
+        if (patchExists) {
+          var patchContents = patchFile.readAsStringSync();
+          contents = _patchLibrary(
+              patchFile.path, contents, patchContents);
+        }
+
+        for (var i = 0; i < outPaths.length; i++) {
+          if (path.basename(outPaths[i]) == 'internal.dart') {
+            contents[i] += '''
+
+/// Marks a function as an external implementation ("native" in the Dart VM).
+///
+/// Provides a backend-specific String that can be used to identify the
+/// function's implementation
+class ExternalName {
+  final String name;
+  const ExternalName(this.name);
+}
+''';
+          }
+
+          _writeSync(outPaths[i], contents[i]);
+        }
+      }
+    }
+  }
+  if (mode == 'vm') {
+
+    for (var tuple in [['_builtin', 'builtin.dart']]) {
+      var vmLibrary = tuple[0];
+      var dartFile = tuple[1];
+
+      // The "dart:_builtin" library is only available for the DartVM.
+      var builtinLibraryIn  = path.join(dartDir, 'runtime', 'bin', dartFile);
+      var builtinLibraryOut = path.join(sdkOut, vmLibrary, '${vmLibrary}.dart');
+      _writeSync(builtinLibraryOut, new File(builtinLibraryIn).readAsStringSync());
+    }
+
+    for (var file in ['loader.dart', 'server.dart', 'vmservice_io.dart']) {
+      var libraryIn  = path.join(dartDir, 'runtime', 'bin', 'vmservice', file);
+      var libraryOut = path.join(sdkOut, 'vmservice_io', file);
+      _writeSync(libraryOut, new File(libraryIn).readAsStringSync());
+    }
+  }
+}
+
+/// Writes a file, creating the directory if needed.
+void _writeSync(String filePath, String contents) {
+  var outDir = new Directory(path.dirname(filePath));
+  if (!outDir.existsSync()) outDir.createSync(recursive: true);
+
+  new File(filePath).writeAsStringSync(contents);
+}
+
+/// Merges dart:* library code with code from *_patch.dart file.
+///
+/// Takes a list of the library's parts contents, with the main library contents
+/// first in the list, and the contents of the patch file.
+///
+/// The result will have `@patch` implementations merged into the correct place
+/// (e.g. the class or top-level function declaration) and all other
+/// declarations introduced by the patch will be placed into the main library
+/// file.
+///
+/// This is purely a syntactic transformation. Unlike dart2js patch files, there
+/// is no semantic meaning given to the *_patch files, and they do not magically
+/// get their own library scope, etc.
+///
+/// Editorializing: the dart2js approach requires a Dart front end such as
+/// package:analyzer to semantically model a feature beyond what is specified
+/// in the Dart language. Since this feature is only for the convenience of
+/// writing the dart:* libraries, and not a tool given to Dart developers, it
+/// seems like a non-ideal situation. Instead we keep the preprocessing simple.
+List<String> _patchLibrary(String name,
+                           List<String> partsContents,
+                           String patchContents) {
+  var results = <StringEditBuffer>[];
+
+  // Parse the patch first. We'll need to extract bits of this as we go through
+  // the other files.
+  final patchFinder = new PatchFinder.parseAndVisit(name, patchContents);
+
+  // Merge `external` declarations with the corresponding `@patch` code.
+  for (var partContent in partsContents) {
+    var partEdits = new StringEditBuffer(partContent);
+    var partUnit = parseCompilationUnit(partContent);
+    partUnit.accept(new PatchApplier(partEdits, patchFinder));
+    results.add(partEdits);
+  }
+  return new List<String>.from(results.map((e) => e.toString()));
+}
+
+/// Merge `@patch` declarations into `external` declarations.
+class PatchApplier extends GeneralizingAstVisitor {
+  final StringEditBuffer edits;
+  final PatchFinder patch;
+
+  bool _isLibrary = true; // until proven otherwise.
+
+  PatchApplier(this.edits, this.patch);
+
+  @override
+  visitCompilationUnit(CompilationUnit node) {
+    super.visitCompilationUnit(node);
+    if (_isLibrary) _mergeUnpatched(node);
+  }
+
+  void _merge(AstNode node, int pos) {
+    var code = patch.contents.substring(node.offset, node.end);
+    edits.insert(pos, '\n' + code);
+  }
+
+  /// Merges directives and declarations that are not `@patch` into the library.
+  void _mergeUnpatched(CompilationUnit unit) {
+    // Merge imports from the patch
+    // TODO(jmesserly): remove duplicate imports
+
+    // To patch a library, we must have a library directive
+    var libDir = unit.directives.first as LibraryDirective;
+    int importPos = unit.directives
+        .lastWhere((d) => d is ImportDirective, orElse: () => libDir)
+        .end;
+    for (var d in patch.unit.directives.where((d) => d is ImportDirective)) {
+      _merge(d, importPos);
+    }
+
+    int partPos = unit.directives.last.end;
+    for (var d in patch.unit.directives.where((d) => d is PartDirective)) {
+      _merge(d, partPos);
+    }
+
+    // Merge declarations from the patch
+    int declPos = edits.original.length;
+    for (var d in patch.mergeDeclarations) {
+      _merge(d, declPos);
+    }
+  }
+
+  @override
+  visitPartOfDirective(PartOfDirective node) {
+    _isLibrary = false;
+  }
+
+  @override
+  visitFunctionDeclaration(FunctionDeclaration node) {
+    _maybePatch(node);
+  }
+
+  /// Merge patches and extensions into the class
+  @override
+  visitClassDeclaration(ClassDeclaration node) {
+    node.members.forEach(_maybePatch);
+
+    var mergeMembers = patch.mergeMembers[_qualifiedName(node)];
+    if (mergeMembers == null) return;
+
+    // Merge members from the patch
+    var pos = node.members.last.end;
+    for (var member in mergeMembers) {
+      var code = patch.contents.substring(member.offset, member.end);
+      edits.insert(pos, '\n\n  ' + code);
+    }
+  }
+
+  void _maybePatch(AstNode node) {
+    if (node is FieldDeclaration) return;
+
+    var externalKeyword = (node as dynamic).externalKeyword;
+    if (externalKeyword == null) return;
+
+    var name = _qualifiedName(node);
+    var patchNode = patch.patches[name];
+    if (patchNode == null) {
+      print('warning: patch not found for $name: $node');
+      return;
+    }
+
+    Annotation patchMeta = patchNode.metadata.lastWhere(_isPatchAnnotation);
+    int start = patchMeta.endToken.next.offset;
+    var code = patch.contents.substring(start, patchNode.end);
+
+    // For some node like static fields, the node's offset doesn't include
+    // the external keyword. Also starting from the keyword lets us preserve
+    // documentation comments.
+    edits.replace(externalKeyword.offset, node.end, code);
+  }
+}
+
+class PatchFinder extends GeneralizingAstVisitor {
+  final String contents;
+  final CompilationUnit unit;
+
+  final Map patches = <String, Declaration>{};
+  final Map mergeMembers = <String, List<ClassMember>>{};
+  final List mergeDeclarations = <CompilationUnitMember>[];
+
+  PatchFinder.parseAndVisit(String name, String contents)
+      : contents = contents,
+        unit = parseCompilationUnit(contents, name: name) {
+    visitCompilationUnit(unit);
+  }
+
+  @override
+  visitCompilationUnitMember(CompilationUnitMember node) {
+    mergeDeclarations.add(node);
+  }
+
+  @override
+  visitClassDeclaration(ClassDeclaration node) {
+    if (_isPatch(node)) {
+      var members = <ClassMember>[];
+      for (var member in node.members) {
+        if (_isPatch(member)) {
+          patches[_qualifiedName(member)] = member;
+        } else {
+          members.add(member);
+        }
+      }
+      if (members.isNotEmpty) {
+        mergeMembers[_qualifiedName(node)] = members;
+      }
+    } else {
+      mergeDeclarations.add(node);
+    }
+  }
+
+  @override
+  visitFunctionDeclaration(FunctionDeclaration node) {
+    if (_isPatch(node)) {
+      patches[_qualifiedName(node)] = node;
+    } else {
+      mergeDeclarations.add(node);
+    }
+  }
+
+  @override
+  visitFunctionBody(node) {} // skip method bodies
+}
+
+String _qualifiedName(Declaration node) {
+  var parent = node.parent;
+  var className = '';
+  if (parent is ClassDeclaration) {
+    className = parent.name.name + '.';
+  }
+  var name = (node as dynamic).name;
+  name = (name != null ? name.name : '');
+
+  var accessor = '';
+  if (node is MethodDeclaration) {
+    if (node.isGetter) accessor = 'get:';
+    else if (node.isSetter) accessor = 'set:';
+  }
+  return className + accessor + name;
+}
+
+bool _isPatch(AnnotatedNode node) => node.metadata.any(_isPatchAnnotation);
+
+bool _isPatchAnnotation(Annotation m) =>
+    m.name.name == 'patch' && m.constructorName == null && m.arguments == null;
+
+/// Editable string buffer.
+///
+/// Applies a series of edits (insertions, removals, replacements) using
+/// original location information, and composes them into the edited string.
+///
+/// For example, starting with a parsed AST with original source locations,
+/// this type allows edits to be made without regards to other edits.
+class StringEditBuffer {
+  final String original;
+  final _edits = <_StringEdit>[];
+
+  /// Creates a new transaction.
+  StringEditBuffer(this.original);
+
+  bool get hasEdits => _edits.length > 0;
+
+  /// Edit the original text, replacing text on the range [begin] and
+  /// exclusive [end] with the [replacement] string.
+  void replace(int begin, int end, String replacement) {
+    _edits.add(new _StringEdit(begin, end, replacement));
+  }
+
+  /// Insert [string] at [offset].
+  /// Equivalent to `replace(offset, offset, string)`.
+  void insert(int offset, String string) => replace(offset, offset, string);
+
+  /// Remove text from the range [begin] to exclusive [end].
+  /// Equivalent to `replace(begin, end, '')`.
+  void remove(int begin, int end) => replace(begin, end, '');
+
+  /// Applies all pending [edit]s and returns a new string.
+  ///
+  /// This method is non-destructive: it does not discard existing edits or
+  /// change the [original] string. Further edits can be added and this method
+  /// can be called again.
+  ///
+  /// Throws [UnsupportedError] if the edits were overlapping. If no edits were
+  /// made, the original string will be returned.
+  String toString() {
+    var sb = new StringBuffer();
+    if (_edits.length == 0) return original;
+
+    // Sort edits by start location.
+    _edits.sort();
+
+    int consumed = 0;
+    for (var edit in _edits) {
+      if (consumed > edit.begin) {
+        sb = new StringBuffer();
+        sb.write('overlapping edits. Insert at offset ');
+        sb.write(edit.begin);
+        sb.write(' but have consumed ');
+        sb.write(consumed);
+        sb.write(' input characters. List of edits:');
+        for (var e in _edits) {
+          sb.write('\n    ');
+          sb.write(e);
+        }
+        throw new UnsupportedError(sb.toString());
+      }
+
+      // Add characters from the original string between this edit and the last
+      // one, if any.
+      var betweenEdits = original.substring(consumed, edit.begin);
+      sb.write(betweenEdits);
+      sb.write(edit.replace);
+      consumed = edit.end;
+    }
+
+    // Add any text from the end of the original string that was not replaced.
+    sb.write(original.substring(consumed));
+    return sb.toString();
+  }
+}
+
+class _StringEdit implements Comparable<_StringEdit> {
+  final int begin;
+  final int end;
+  final String replace;
+
+  _StringEdit(this.begin, this.end, this.replace);
+
+  int get length => end - begin;
+
+  String toString() => '(Edit @ $begin,$end: "$replace")';
+
+  int compareTo(_StringEdit other) {
+    int diff = begin - other.begin;
+    if (diff != 0) return diff;
+    return end - other.end;
+  }
+}
+
+List<SdkLibrary> _getSdkLibraries(String contents) {
+  var libraryBuilder = new SdkLibrariesReader_LibraryBuilder(true);
+  parseCompilationUnit(contents).accept(libraryBuilder);
+  return libraryBuilder.librariesMap.sdkLibraries;
+}
diff --git a/tools/patch_sdk.py b/tools/patch_sdk.py
new file mode 100755
index 0000000..faa2bd0
--- /dev/null
+++ b/tools/patch_sdk.py
@@ -0,0 +1,31 @@
+#!/usr/bin/env python
+# Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
+# for details. All rights reserved. Use of this source code is governed by a
+# BSD-style license that can be found in the LICENSE file.
+
+import argparse
+import os
+import subprocess
+import sys
+import utils
+
+usage = """patch_sdk.py [options]"""
+
+def BuildArguments():
+  result = argparse.ArgumentParser(usage=usage)
+  result.add_argument("--dart-executable", help="dart executable", default=None)
+  return result
+
+def main():
+  # Parse the options.
+  parser = BuildArguments()
+  (options, args) = parser.parse_known_args()
+  if options.dart_executable is not None:
+    options.dart_executable = os.path.abspath(options.dart_executable)
+  else:
+    options.dart_executable = os.path.join(utils.CheckedInSdkPath(), 'bin', 'dart')
+  dart_file = os.path.join(os.path.dirname(__file__), 'patch_sdk.dart')
+  subprocess.check_call([options.dart_executable, dart_file] + args);
+
+if __name__ == '__main__':
+  main()
diff --git a/tools/testing/dart/co19_test_config.dart b/tools/testing/dart/co19_test_config.dart
index c331f93..9dc55fa 100644
--- a/tools/testing/dart/co19_test_config.dart
+++ b/tools/testing/dart/co19_test_config.dart
@@ -17,7 +17,8 @@
           "tests/co19/co19-analyzer2.status",
           "tests/co19/co19-runtime.status",
           "tests/co19/co19-dart2js.status",
-          "tests/co19/co19-dartium.status"
+          "tests/co19/co19-dartium.status",
+          "tests/co19/co19-kernel.status"
         ]);
 
   bool isTestFile(String filename) => _testRegExp.hasMatch(filename);
diff --git a/tools/testing/dart/compiler_configuration.dart b/tools/testing/dart/compiler_configuration.dart
index 49368ce..3613dcd 100644
--- a/tools/testing/dart/compiler_configuration.dart
+++ b/tools/testing/dart/compiler_configuration.dart
@@ -89,6 +89,17 @@
             arch: configuration['arch'],
             useBlobs: useBlobs,
             isAndroid: configuration['system'] == 'android');
+      case 'dartk':
+        return ComposedCompilerConfiguration.createDartKConfiguration(
+            isHostChecked: isHostChecked,
+            useSdk: useSdk);
+      case 'dartkp':
+        return ComposedCompilerConfiguration.createDartKPConfiguration(
+            isHostChecked: isHostChecked,
+            arch: configuration['arch'],
+            useBlobs: useBlobs,
+            isAndroid: configuration['system'] == 'android',
+            useSdk: useSdk);
       case 'none':
         return new NoneCompilerConfiguration(
             isDebug: isDebug,
@@ -199,6 +210,184 @@
   }
 }
 
+/// The "dartk" compiler.
+class DartKCompilerConfiguration extends CompilerConfiguration {
+  DartKCompilerConfiguration({bool isHostChecked, bool useSdk})
+      : super._subclass(isHostChecked: isHostChecked, useSdk: useSdk);
+
+  @override
+  String computeCompilerPath(String buildDir) {
+    return 'third_party/pkg/kernel/bin/dartk.dart';
+  }
+
+  CompilationCommand computeCompilationCommand(
+      String outputFileName,
+      String buildDir,
+      CommandBuilder commandBuilder,
+      List arguments,
+      Map<String, String> environmentOverrides) {
+    var extraArguments = [
+      '--sdk',
+      '$buildDir/obj/gen/patched_sdk',
+      '--link',
+      '--target=vm',
+      '--out',
+      outputFileName
+    ];
+    return commandBuilder.getKernelCompilationCommand(
+        'dartk',
+        outputFileName,
+        true,
+        bootstrapDependencies(buildDir),
+        computeCompilerPath(buildDir),
+        []..addAll(arguments)..addAll(extraArguments),
+        environmentOverrides);
+  }
+
+  CommandArtifact computeCompilationArtifact(
+      String buildDir,
+      String tempDir,
+      CommandBuilder commandBuilder,
+      List arguments,
+      Map<String, String> environmentOverrides) {
+    return new CommandArtifact(<Command>[
+      this.computeCompilationCommand('$tempDir/out.dill', buildDir,
+          CommandBuilder.instance, arguments, environmentOverrides)
+    ], '$tempDir/out.dill', 'application/dart');
+  }
+}
+
+typedef List<String> CompilerArgumentsFunction(
+    List<String> globalArguments,
+    String previousCompilerOutput);
+
+class PipelineCommand {
+  final CompilerConfiguration compilerConfiguration;
+  final CompilerArgumentsFunction _argumentsFunction;
+
+  PipelineCommand._(this.compilerConfiguration, this._argumentsFunction);
+
+  factory PipelineCommand.runWithGlobalArguments(CompilerConfiguration conf) {
+    return new PipelineCommand._(conf, (List<String> globalArguments,
+                                        String previousOutput) {
+      assert(previousOutput == null);
+      return globalArguments;
+    });
+  }
+
+  factory PipelineCommand.runWithDartOrKernelFile(CompilerConfiguration conf) {
+    return new PipelineCommand._(conf, (List<String> globalArguments,
+                                        String previousOutput) {
+      var filtered = globalArguments
+        .where((String name) => name.endsWith('.dart') ||
+                                name.endsWith('.dill'))
+        .toList();
+      assert(filtered.length == 1);
+      return filtered;
+    });
+  }
+
+  factory PipelineCommand.runWithPreviousKernelOutput(
+      CompilerConfiguration conf) {
+    return new PipelineCommand._(conf, (List<String> globalArguments,
+                                        String previousOutput) {
+      assert(previousOutput.endsWith('.dill'));
+      return [previousOutput];
+    });
+  }
+
+  List<String> extractArguments(List<String> globalArguments,
+                                String previousOutput) {
+    return _argumentsFunction(globalArguments, previousOutput);
+  }
+}
+
+class ComposedCompilerConfiguration extends CompilerConfiguration {
+  final List<PipelineCommand> pipelineCommands;
+
+  ComposedCompilerConfiguration(this.pipelineCommands)
+      : super._subclass();
+
+  CommandArtifact computeCompilationArtifact(
+      String buildDir,
+      String tempDir,
+      CommandBuilder commandBuilder,
+      List globalArguments,
+      Map<String, String> environmentOverrides) {
+
+    List<Command> allCommands = [];
+
+    // The first compilation command is as usual.
+    var arguments = pipelineCommands[0].extractArguments(globalArguments, null);
+    CommandArtifact artifact =
+        pipelineCommands[0].compilerConfiguration.computeCompilationArtifact(
+          buildDir, tempDir, commandBuilder, arguments, environmentOverrides);
+    allCommands.addAll(artifact.commands);
+
+    // The following compilation commands are based on the output of the
+    // previous one.
+    for (int i = 1; i < pipelineCommands.length; i++) {
+      PipelineCommand pc = pipelineCommands[i];
+
+      arguments = pc.extractArguments(globalArguments, artifact.filename);
+      artifact = pc.compilerConfiguration.computeCompilationArtifact(
+          buildDir, tempDir, commandBuilder, arguments, environmentOverrides);
+
+      allCommands.addAll(artifact.commands);
+    }
+
+    return new CommandArtifact(
+        allCommands, artifact.filename, artifact.mimeType);
+  }
+
+  List<String> computeCompilerArguments(vmOptions, sharedOptions, args) {
+    // The result will be passed as an input to [extractArguments]
+    // (i.e. the arguments to the [PipelineCommand]).
+    return new List<String>.from(sharedOptions)..addAll(args);
+  }
+
+  List<String> computeRuntimeArguments(
+      RuntimeConfiguration runtimeConfiguration,
+      String buildDir,
+      TestInformation info,
+      List<String> vmOptions,
+      List<String> sharedOptions,
+      List<String> originalArguments,
+      CommandArtifact artifact) {
+    return <String>[artifact.filename];
+  }
+
+  static ComposedCompilerConfiguration createDartKPConfiguration(
+      {bool isHostChecked, String arch, bool useBlobs, bool isAndroid,
+       bool useSdk}) {
+    var nested = [];
+
+    // Compile with dartk.
+    nested.add(new PipelineCommand.runWithGlobalArguments(
+        new DartKCompilerConfiguration(isHostChecked: isHostChecked,
+            useSdk: useSdk)));
+
+    // Run the normal precompiler.
+    nested.add(new PipelineCommand.runWithPreviousKernelOutput(
+        new PrecompilerCompilerConfiguration(
+          arch: arch, useBlobs: useBlobs, isAndroid: isAndroid)));
+
+    return new ComposedCompilerConfiguration(nested);
+  }
+
+  static ComposedCompilerConfiguration createDartKConfiguration(
+      {bool isHostChecked, bool useSdk}) {
+    var nested = [];
+
+    // Compile with dartk.
+    nested.add(new PipelineCommand.runWithGlobalArguments(
+        new DartKCompilerConfiguration(isHostChecked: isHostChecked,
+            useSdk: useSdk)));
+
+    return new ComposedCompilerConfiguration(nested);
+  }
+}
+
 /// Common configuration for dart2js-based tools, such as, dart2js
 class Dart2xCompilerConfiguration extends CompilerConfiguration {
   final String moniker;
diff --git a/tools/testing/dart/test_configurations.dart b/tools/testing/dart/test_configurations.dart
index f82e62d..d9e7128 100644
--- a/tools/testing/dart/test_configurations.dart
+++ b/tools/testing/dart/test_configurations.dart
@@ -42,6 +42,7 @@
   new Path('tests/corelib'),
   new Path('tests/html'),
   new Path('tests/isolate'),
+  new Path('tests/kernel'),
   new Path('tests/language'),
   new Path('tests/lib'),
   new Path('tests/standalone'),
diff --git a/tools/testing/dart/test_options.dart b/tools/testing/dart/test_options.dart
index 255564a..bee1a2c 100644
--- a/tools/testing/dart/test_options.dart
+++ b/tools/testing/dart/test_options.dart
@@ -26,6 +26,7 @@
   'pkg',
   'analyze_library',
   'service',
+  'kernel',
   'observatory_ui'
 ];
 
@@ -75,9 +76,15 @@
 
    dart2app:
    dart2appjit: Compile the Dart code into an app snapshot before running test
-          (only valid with dart_app runtime)''',
+          (only valid with dart_app runtime)
+
+   dartk: Compile the Dart source into Kernel before running test.
+
+   dartkp: Compiler the Dart source into Kernel and then Kernel into AOT
+   snapshot before running the test.''',
           ['-c', '--compiler'],
-          ['none', 'precompiler', 'dart2js', 'dart2analyzer', 'dart2app', 'dart2appjit'],
+          ['none', 'precompiler', 'dart2js', 'dart2analyzer', 'dart2app',
+           'dart2appjit', 'dartk', 'dartkp'],
           'none'),
       // TODO(antonm): fix the option drt.
       new _TestOptionSpecification(
@@ -677,6 +684,12 @@
       case 'precompiler':
         validRuntimes = const ['dart_precompiled'];
         break;
+      case 'dartk':
+        validRuntimes = const ['vm'];
+        break;
+      case 'dartkp':
+        validRuntimes = const ['dart_precompiled'];
+        break;
       case 'none':
         validRuntimes = const [
           'vm',
@@ -838,9 +851,9 @@
     if (configuration['package_root'] == null &&
         configuration['packages'] == null) {
       configuration['packages'] =
-        TestUtils.dartDirUri.resolve('.packages').toFilePath();     
+        TestUtils.dartDirUri.resolve('.packages').toFilePath();
     }
-    
+
     // Expand the architectures.
     if (configuration['arch'].contains(',')) {
       return _expandHelper('arch', configuration);
diff --git a/tools/testing/dart/test_runner.dart b/tools/testing/dart/test_runner.dart
index 00a2ebb..7b1e596 100644
--- a/tools/testing/dart/test_runner.dart
+++ b/tools/testing/dart/test_runner.dart
@@ -221,6 +221,20 @@
       deepJsonCompare(_bootstrapDependencies, other._bootstrapDependencies);
 }
 
+class KernelCompilationCommand extends CompilationCommand {
+  KernelCompilationCommand._(
+      String displayName,
+      String outputFile,
+      bool neverSkipCompilation,
+      List<Uri> bootstrapDependencies,
+      String executable,
+      List<String> arguments,
+      Map<String, String> environmentOverrides)
+      : super._(displayName, outputFile, neverSkipCompilation,
+                bootstrapDependencies, executable, arguments,
+                environmentOverrides);
+}
+
 /// This is just a Pair(String, Map) class with hashCode and operator ==
 class AddFlagsKey {
   final String flags;
@@ -650,6 +664,25 @@
     return _getUniqueCommand(command);
   }
 
+  CompilationCommand getKernelCompilationCommand(
+      String displayName,
+      outputFile,
+      neverSkipCompilation,
+      List<Uri> bootstrapDependencies,
+      String executable,
+      List<String> arguments,
+      Map<String, String> environment) {
+    var command = new KernelCompilationCommand._(
+        displayName,
+        outputFile,
+        neverSkipCompilation,
+        bootstrapDependencies,
+        executable,
+        arguments,
+        environment);
+    return _getUniqueCommand(command);
+  }
+
   AnalysisCommand getAnalysisCommand(
       String displayName, executable, arguments, environmentOverrides,
       {String flavor: 'dart2analyzer'}) {
@@ -1609,6 +1642,29 @@
   }
 }
 
+class KernelCompilationCommandOutputImpl extends CompilationCommandOutputImpl {
+  KernelCompilationCommandOutputImpl(
+      Command command, int exitCode, bool timedOut,
+      List<int> stdout, List<int> stderr,
+      Duration time, bool compilationSkipped)
+      : super(command, exitCode, timedOut, stdout, stderr, time,
+              compilationSkipped);
+
+  bool get canRunDependendCommands {
+    // See [BatchRunnerProcess]: 0 means success, 1 means compile-time error.
+    // TODO(asgerf): When the frontend supports it, continue running even if
+    //   there were compile-time errors. See kernel_sdk issue #18.
+    return !hasCrashed && !timedOut && exitCode == 0;
+  }
+
+  // If the compiler was able to produce a Kernel IR file we want to run the
+  // result on the Dart VM.  We therefore mark the [KernelCompilationCommand] as
+  // successful.
+  // => This ensures we test that the DartVM produces correct CompileTime errors
+  //    as it is supposed to for our test suites.
+  bool get successful => canRunDependendCommands;
+}
+
 class JsCommandlineOutputImpl extends CommandOutputImpl
     with UnittestSuiteMessagesMixin {
   JsCommandlineOutputImpl(Command command, int exitCode, bool timedOut,
@@ -1683,6 +1739,9 @@
   } else if (command is VmCommand) {
     return new VmCommandOutputImpl(
         command, exitCode, timedOut, stdout, stderr, time, pid);
+  } else if (command is KernelCompilationCommand) {
+    return new KernelCompilationCommandOutputImpl(
+        command, exitCode, timedOut, stdout, stderr, time, compilationSkipped);
   } else if (command is AdbPrecompilationCommand) {
     return new VmCommandOutputImpl(
         command, exitCode, timedOut, stdout, stderr, time, pid);
@@ -2549,6 +2608,12 @@
 
     if (command is BrowserTestCommand) {
       return _startBrowserControllerTest(command, timeout);
+    } else if (command is KernelCompilationCommand) {
+      // For now, we always run dartk in batch mode.
+      var name = command.displayName;
+      assert(name == 'dartk');
+      return _getBatchRunner(name)
+          .runCommand(name, command, timeout, command.arguments);
     } else if (command is CompilationCommand && dart2jsBatchMode) {
       return _getBatchRunner("dart2js")
           .runCommand("dart2js", command, timeout, command.arguments);
diff --git a/tools/testing/dart/test_suite.dart b/tools/testing/dart/test_suite.dart
index 69f077f..e994822 100644
--- a/tools/testing/dart/test_suite.dart
+++ b/tools/testing/dart/test_suite.dart
@@ -717,7 +717,8 @@
       '$directory/$name.status',
       '$directory/.status',
       '$directory/${name}_dart2js.status',
-      '$directory/${name}_analyzer2.status'
+      '$directory/${name}_analyzer2.status',
+      '$directory/${name}_kernel.status'
     ];
 
     return new StandardTestSuite(configuration, name, directory, status_paths,
@@ -1675,7 +1676,9 @@
    * configurations, so it may not use [configuration].
    */
   Map readOptionsFromFile(Path filePath) {
-    if (filePath.segments().contains('co19')) {
+    if (filePath.filename.endsWith('.dill')) {
+      return optionsFromKernelFile();
+    } else if (filePath.segments().contains('co19')) {
       return readOptionsFromCo19File(filePath);
     }
     RegExp testOptionsRegExp = new RegExp(r"// VMOptions=(.*)");
@@ -1801,6 +1804,25 @@
     };
   }
 
+  Map optionsFromKernelFile() {
+    return const {
+      "vmOptions": const [ const []],
+      "sharedOptions": const [],
+      "dartOptions": null,
+      "packageRoot": null,
+      "packages": null,
+      "hasCompileError": false,
+      "hasRuntimeError": false,
+      "hasStaticWarning": false,
+      "otherScripts": const [],
+      "isMultitest": false,
+      "isMultiHtmlTest": false,
+      "subtestNames": const [],
+      "isolateStubs": '',
+      "containsDomImport": false,
+    };
+  }
+
   List<List<String>> getVmOptions(Map optionsFromFile) {
     var COMPILERS = const ['none', 'precompiler', 'dart2app', 'dart2appjit'];
     var RUNTIMES = const [
diff --git a/utils/compiler/BUILD.gn b/utils/compiler/BUILD.gn
index 2095edb..e13cea2 100644
--- a/utils/compiler/BUILD.gn
+++ b/utils/compiler/BUILD.gn
@@ -23,8 +23,8 @@
 invoke_dart("dart2js_create_snapshot_entries") {
   deps = [
     ":dart2js_files_stamp",
-    ":runtime_lib_files_stamp",
     ":dartdoc_files_stamp",
+    ":runtime_lib_files_stamp",
   ]
 
   dot_packages = rebase_path("../../.packages")
@@ -55,18 +55,18 @@
 
 application_snapshot("dart2js") {
   deps = [
-    ":dart2js_create_snapshot_entries"
+    ":dart2js_create_snapshot_entries",
   ]
   main_dart = "$root_gen_dir/dart2js.dart"
   training_args = [
     "--library-root=" + rebase_path("../../sdk"),
-    rebase_path("../../tests/language/first_test.dart")
+    rebase_path("../../tests/language/first_test.dart"),
   ]
 }
 
 application_snapshot("utils_wrapper") {
   deps = [
-    ":dart2js_create_snapshot_entries"
+    ":dart2js_create_snapshot_entries",
   ]
   main_dart = "$root_gen_dir/utils_wrapper.dart"
   training_args = [ "--help" ]
diff --git a/utils/create_timestamp.gni b/utils/create_timestamp.gni
index fce5c30..c579da1 100644
--- a/utils/create_timestamp.gni
+++ b/utils/create_timestamp.gni
@@ -18,15 +18,18 @@
   path = invoker.path
   output = invoker.output
   action(target_name) {
-    list_args = [path]
+    list_args = [ path ]
     if (defined(invoker.pattern)) {
-      list_args += [invoker.pattern]
+      list_args += [ invoker.pattern ]
     }
-    files = exec_script(
-        "$_dart_root/tools/list_dart_files.py", list_args, "list lines")
-    inputs = ["$_dart_root/tools/list_dart_files.py"] +
+    files = exec_script("$_dart_root/tools/list_dart_files.py",
+                        list_args,
+                        "list lines")
+    inputs = [ "$_dart_root/tools/list_dart_files.py" ] +
              rebase_path(files, new_base, current_base)
-    outputs = [ output ]
+    outputs = [
+      output,
+    ]
     script = "$_dart_root/tools/create_timestamp_file.py"
     args = [ rebase_path(output) ]
   }
diff --git a/utils/dartanalyzer/BUILD.gn b/utils/dartanalyzer/BUILD.gn
index 9128168..e4d4a62 100644
--- a/utils/dartanalyzer/BUILD.gn
+++ b/utils/dartanalyzer/BUILD.gn
@@ -13,36 +13,36 @@
 }
 
 analyzer_files = exec_script("../../tools/list_dart_files.py",
-                             [rebase_path("../../pkg/analyzer")],
+                             [ rebase_path("../../pkg/analyzer") ],
                              "list lines")
 
 application_snapshot("generate_dartanalyzer_snapshot") {
   main_dart = "../../pkg/analyzer_cli/bin/analyzer.dart"
   training_args = [
     "--dart-sdk=" + rebase_path("../../sdk"),
-    rebase_path("../../tests/language/first_test.dart")
+    rebase_path("../../tests/language/first_test.dart"),
   ]
   name = "dartanalyzer"
   cli_files = exec_script("../../tools/list_dart_files.py",
-                          [rebase_path("../../pkg/analyzer_cli")],
+                          [ rebase_path("../../pkg/analyzer_cli") ],
                           "list lines")
   inputs = cli_files + analyzer_files
 }
 
 sdk_lib_files = exec_script("../../tools/list_dart_files.py",
-                            [rebase_path("../../sdk/lib")],
+                            [ rebase_path("../../sdk/lib") ],
                             "list lines")
 
 template("generate_summary") {
   assert(defined(invoker.type), "Must specify the summary type")
   type = invoker.type
-  assert((type == "spec") || (type == "strong"))
+  assert(type == "spec" || type == "strong")
   invoke_dart(target_name) {
     inputs = sdk_lib_files + analyzer_files
 
     output = "$root_gen_dir/$type.sum"
     outputs = [
-      output
+      output,
     ]
 
     dot_packages = rebase_path("../../.packages")
diff --git a/utils/dartdevc/BUILD.gn b/utils/dartdevc/BUILD.gn
index 11c94a0..9b1bdbe 100644
--- a/utils/dartdevc/BUILD.gn
+++ b/utils/dartdevc/BUILD.gn
@@ -6,8 +6,12 @@
 
 application_snapshot("dartdevc") {
   main_dart = "../../pkg/dev_compiler/bin/dartdevc.dart"
-  training_args = [ "--help" ]
+  training_args = [
+    "--dart-sdk",
+    rebase_path("../../sdk"),
+    "--help",
+  ]
   inputs = exec_script("../../tools/list_dart_files.py",
-                       [rebase_path("../../pkg/dev_compiler/bin")],
+                       [ rebase_path("../../pkg/dev_compiler/bin") ],
                        "list lines")
 }
diff --git a/utils/dartdoc/BUILD.gn b/utils/dartdoc/BUILD.gn
index 5c1d0e3..d7fa984 100644
--- a/utils/dartdoc/BUILD.gn
+++ b/utils/dartdoc/BUILD.gn
@@ -8,6 +8,6 @@
   main_dart = "../../third_party/pkg/dartdoc/bin/dartdoc.dart"
   training_args = [ "--help" ]
   inputs = exec_script("../../tools/list_dart_files.py",
-                       [rebase_path("../../third_party/pkg/dartdoc")],
+                       [ rebase_path("../../third_party/pkg/dartdoc") ],
                        "list lines")
 }
diff --git a/utils/dartfmt/BUILD.gn b/utils/dartfmt/BUILD.gn
index f3bbfdc..bb875f0 100644
--- a/utils/dartfmt/BUILD.gn
+++ b/utils/dartfmt/BUILD.gn
@@ -7,7 +7,8 @@
 application_snapshot("dartfmt") {
   main_dart = "../../third_party/pkg_tested/dart_style/bin/format.dart"
   training_args = [ "--help" ]
-  inputs = exec_script("../../tools/list_dart_files.py",
-                       [rebase_path("../../third_party/pkg_tested/dart_style")],
-                       "list lines")
+  inputs =
+      exec_script("../../tools/list_dart_files.py",
+                  [ rebase_path("../../third_party/pkg_tested/dart_style") ],
+                  "list lines")
 }
diff --git a/utils/invoke_dart.gni b/utils/invoke_dart.gni
index e300cdb..ad3a7f8 100644
--- a/utils/invoke_dart.gni
+++ b/utils/invoke_dart.gni
@@ -23,28 +23,24 @@
 
   action(target_name) {
     relative_dart_root = rebase_path(_dart_root, ".")
-    deps = extra_deps + [
-      "$relative_dart_root/runtime/bin:dart($host_toolchain)",
-    ]
+    deps =
+        extra_deps + [ "$relative_dart_root/runtime/bin:dart($host_toolchain)" ]
 
-    dart_out_dir = get_label_info(
-        "$relative_dart_root/runtime/bin:dart($host_toolchain)", "root_out_dir")
+    dart_out_dir =
+        get_label_info("$relative_dart_root/runtime/bin:dart($host_toolchain)",
+                       "root_out_dir")
     if (is_win) {
       dart = rebase_path("$dart_out_dir/dart.exe")
     } else {
       dart = rebase_path("$dart_out_dir/dart")
     }
 
-    inputs = [
-      dart,
-    ] + extra_inputs
+    inputs = [ dart ] + extra_inputs
 
     outputs = invoker.outputs
 
     script = "$_dart_root/tools/dart_for_gn.py"
-    args = [
-      dart,
-    ] + extra_args
+    args = [ dart ] + extra_args
   }
 }
 
@@ -66,14 +62,12 @@
     extra_inputs += invoker.inputs
   }
   invoke_dart(target_name) {
-    deps = extra_deps + [
-      "$_dart_root/pkg:pkg_files_stamp"
-    ]
+    deps = extra_deps + [ "$_dart_root/pkg:pkg_files_stamp" ]
 
     inputs = extra_inputs + [
-      "$_dart_root/sdk/lib/_internal/sdk_library_metadata/lib/libraries.dart",
-      "$root_gen_dir/pkg_files.stamp",
-    ]
+               "$_dart_root/sdk/lib/_internal/sdk_library_metadata/lib/libraries.dart",
+               "$root_gen_dir/pkg_files.stamp",
+             ]
 
     output = "$root_gen_dir/$name.dart.snapshot"
     outputs = [
@@ -85,10 +79,10 @@
     main_file = rebase_path(main_dart)
 
     args = [
-      "--packages=$dot_packages",
-      "--snapshot=$abs_output",
-      "--snapshot-kind=app-jit",
-      main_file,
-    ] + training_args
+             "--packages=$dot_packages",
+             "--snapshot=$abs_output",
+             "--snapshot-kind=app-jit",
+             main_file,
+           ] + training_args
   }
 }
diff --git a/utils/pub/BUILD.gn b/utils/pub/BUILD.gn
index 7ef2aa4..d1238cd 100644
--- a/utils/pub/BUILD.gn
+++ b/utils/pub/BUILD.gn
@@ -8,9 +8,9 @@
   main_dart = "../../third_party/pkg/pub/bin/pub.dart"
   training_args = [ "--help" ]
   deps = [
-    "../compiler:dart2js_files_stamp"
+    "../compiler:dart2js_files_stamp",
   ]
   inputs = [
-    "$root_gen_dir/dart2js_files.stamp"
+    "$root_gen_dir/dart2js_files.stamp",
   ]
 }