diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7b8a311..b9759dc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -76,6 +76,51 @@
 ### Tool Changes
 
 * Pub
+    * Added support for the Dart Development Compiler in `build` and `serve`.
+
+      Unlike dart2js, this new compiler is modular, which allows pub to do
+      incremental re-builds for `pub serve`, and potentially `pub build` in the
+      future.
+
+      In practice what that means is you can edit your Dart files, refresh in
+      Chrome (or other supported browsers), and see your edits almost
+      immediately. This is because pub is only recompiling your package, not all
+      packages that you depend on.
+
+      There is one caveat with the new compiler, which is that your package and
+      your dependencies must all be strong mode clean. If you are getting an
+      error compiling one of your dependencies, you will need to file bugs or
+      send pull requests to get them strong mode clean.
+
+      There are two ways of opting into the new compiler:
+
+        * Use the new `--web-compiler` flag, which supports `dartdevc`,
+          `dart2js` or `none` as options. This is the easiest way to try things
+          out without changing the default.
+
+        * Add config to your pubspec. There is a new `web` key which supports a
+          single key called `compiler`. This is a map from mode names to
+          compiler to use. For example, to default to dartdevc in debug mode you
+          can add the following to your pubspec:
+
+          ```yaml
+          web:
+            compiler:
+              debug: dartdevc
+          ```
+
+      You can also use the new compiler to run your tests in Chrome much more
+      quickly than you can with dart2js. In order to do that, run
+      `pub serve test --web-compiler=dartdevc`, and then run
+      `pub run test -p chrome --pub-serve=8080`.
+
+    * The `--no-dart2js` flag has been deprecated in favor of
+      `--web-compiler=none`.
+    * Added support for the UNLICENSE file when validating licenses on
+      `pub lish`.
+    * Better handling for network errors when fetching packages. These are no
+      longer unhandled errors and won't print a stack trace unless you are
+      running in verbose mode.
     * `pub build` will use a failing exit code if there are errors in any
       transformer.
     * Allow publishing packages that depend on the Flutter SDK.
diff --git a/DEPS b/DEPS
index 9a2afb2..a8ee25a 100644
--- a/DEPS
+++ b/DEPS
@@ -95,7 +95,7 @@
   "ply_rev": "@604b32590ffad5cbb82e4afef1d305512d06ae93",
   "pool_tag": "@1.3.0",
   "protobuf_tag": "@0.5.4",
-  "pub_rev": "@492372c4546c5a1a8b45891f956d2b2e98221fb0",
+  "pub_rev": "@a8781274e3a38c34a49d4c5bffb98557c6022a75",
   "pub_semver_tag": "@1.3.2",
   "quiver_tag": "@0.22.0",
   "resource_rev":"@a49101ba2deb29c728acba6fb86000a8f730f4b1",
diff --git a/sdk/lib/html/dartium/html_dartium.dart b/sdk/lib/html/dartium/html_dartium.dart
index 008c374..34c3446 100644
--- a/sdk/lib/html/dartium/html_dartium.dart
+++ b/sdk/lib/html/dartium/html_dartium.dart
@@ -28998,7 +28998,7 @@
 
   @DomName('MouseEvent.dataTransfer')
   DataTransfer get dataTransfer =>
-      js.JsNative.getProperty(js.context, 'dataTransfer');
+      js.JsNative.getProperty(this, 'dataTransfer');
 }
 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file
 // for details. All rights reserved. Use of this source code is governed by a
@@ -41281,11 +41281,11 @@
       return _blink.BlinkURL.instance
           .createObjectURL_Callback_1_(blob_OR_source_OR_stream);
     }
-    if ((blob_OR_source_OR_stream is MediaStream)) {
+    if ((blob_OR_source_OR_stream is MediaSource)) {
       return _blink.BlinkURL.instance
           .createObjectURL_Callback_1_(blob_OR_source_OR_stream);
     }
-    if ((blob_OR_source_OR_stream is MediaSource)) {
+    if ((blob_OR_source_OR_stream is MediaStream)) {
       return _blink.BlinkURL.instance
           .createObjectURL_Callback_1_(blob_OR_source_OR_stream);
     }
diff --git a/tools/VERSION b/tools/VERSION
index a107d71..b6b50ee 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -28,4 +28,4 @@
 MINOR 24
 PATCH 0
 PRERELEASE 6
-PRERELEASE_PATCH 4
+PRERELEASE_PATCH 5
diff --git a/tools/deps/dartium.deps/DEPS b/tools/deps/dartium.deps/DEPS
index 354838e..060ffe4 100644
--- a/tools/deps/dartium.deps/DEPS
+++ b/tools/deps/dartium.deps/DEPS
@@ -1,14 +1,13 @@
+# The file DEPS.chromium from this directory (tools/deps/dartium.deps) is
+# copied into this file, rather than imported, because the new DEPS syntax
+# analyzer does not support the way that we import it.
+# Please keep the code between here and "END OF IMPORTED CHROMIUM DEPS"
+# an exact copy of the modified DEPS.chromium in this directory.
 
-import gclient_utils
-import os
+vars = {
+  # Start of Dartium vars
 
-path = gclient_utils.FindGclientRoot(os.getcwd())
-execfile(os.path.join(path, 'src', 'dart', 'tools', 'deps', 'dartium.deps', 'DEPS.chromium')) # Include proper Chromium DEPS.
-
-# Now we need to override some settings and add some new ones.
-
-vars.update({
-  "dartium_chromium_commit": "a0717ebdcf4578b98de1d858005aa9c5f346bd33",
+  "dartium_chromium_commit": "67146b50bbc0dab33006c51b5dde056ee16f0f2b",
   "chromium_base_revision": "378081",
 
   # We use mirrors of all github repos to guarantee reproducibility and
@@ -69,9 +68,195 @@
   "WebCore_rev": "@3c45690813c112373757bbef53de1602a62af609",
 
   "co19_rev": "@4af9ef149be554216c5bb16cbac8e50d4c28cdf1",
-})
 
-deps.update({
+  # End of Dartium vars
+
+  'angle_revision':
+    '4d76061e2be5b8b005afba8e0c145592c3b04527',
+  'boringssl_revision':
+    '6d49157929abdefb155daf2751dc03fd9eb4240c',
+  'buildspec_platforms':
+    'chromeos,',
+  'buildtools_revision':
+    '3d2e47bf14e4e67816a53e304dea422fa18f9180',
+  'chromium_git':
+    'https://chromium.googlesource.com',
+  'deqp_revision':
+    'cc0ded6c77267bbb14d21aac358fc5d9690c07f8',
+  'deqp_url':
+    'https://android.googlesource.com/platform/external/deqp',
+  'freetype_android_revision':
+    'a512b0fe7a8d9db0e5aa9c0a4db1e92cb861722d',
+  'google_toolbox_for_mac_revision':
+    '401878398253074c515c03cb3a3f8bb0cc8da6e9',
+  'googlecode_url':
+    'http://%s.googlecode.com/svn',
+  'lighttpd_revision':
+    '9dfa55d15937a688a92cbf2b7a8621b0927d06eb',
+  'lss_revision':
+    '4fc942258fe5509549333b9487ec018e3c8c5b10',
+  'nacl_revision':
+    'd182b0a028d44ba9767ae25b30cf3986a7e72e99',
+  'nss_revision':
+    '225bfc39c93dfb7c7d0d1162f81e9bb5cd356c30',
+  'openmax_dl_revision':
+    '6670e52d32351145a6b6c198dab3f6a536edf3db',
+  'pdfium_revision':
+    '8ba5b59356d506d3b9e976e7422e69bbd5bec8d6',
+  'sfntly_revision':
+    '130f832eddf98467e6578b548cb74ce17d04a26d',
+  'skia_revision':
+    '82e26bf23923f20828c850d1a0e01d8bde69cfff',
+  'swarming_revision':
+    'a72f46e42dba1335e8001499b4621acad2d26728',
+  'v8_revision':
+    'ad16e6c2cbd2c6b0f2e8ff944ac245561c682ac2'
+}
+allowed_hosts = [
+  'android.googlesource.com',
+  'boringssl.googlesource.com',
+  'chromium.googlesource.com',
+  'pdfium.googlesource.com'
+]
+deps = {
+  'src/breakpad/src':
+    (Var("chromium_git")) + '/breakpad/breakpad/src.git@481608d284106df9400d447e95574799670cabaf',
+  'src/buildtools':
+    (Var("chromium_git")) + '/chromium/buildtools.git@3d2e47bf14e4e67816a53e304dea422fa18f9180',
+  'src/chrome/test/data/perf/canvas_bench':
+    (Var("chromium_git")) + '/chromium/canvas_bench.git@a7b40ea5ae0239517d78845a5fc9b12976bfc732',
+  'src/chrome/test/data/perf/frame_rate/content':
+    (Var("chromium_git")) + '/chromium/frame_rate/content.git@c10272c88463efeef6bb19c9ec07c42bc8fe22b9',
+  'src/media/cdm/api':
+    (Var("chromium_git")) + '/chromium/cdm.git@1dea7088184dec2ebe4a8b3800aabb0afbb4b88a',
+  'src/native_client':
+    (Var("chromium_git")) + '/native_client/src/native_client.git@fb00463cb1ebd46a46c050101f8b6a6c999d5dc1',
+  'src/sdch/open-vcdiff':
+    (Var("chromium_git")) + '/external/github.com/google/open-vcdiff.git@21d7d0b9c3d0c3ccbdb221c85ae889373f0a2a58',
+  'src/testing/gmock':
+    (Var("chromium_git")) + '/external/googlemock.git@0421b6f358139f02e102c9c332ce19a33faf75be',
+  'src/testing/gtest':
+    (Var("chromium_git")) + '/external/github.com/google/googletest.git@6f8a66431cb592dad629028a50b3dd418a408c87',
+  'src/third_party/angle':
+    (Var("chromium_git")) + '/angle/angle.git@c46018b8598dad46f6834411f27e12e90bb62a56',
+  'src/third_party/bidichecker':
+    (Var("chromium_git")) + '/external/bidichecker/lib.git@97f2aa645b74c28c57eca56992235c79850fa9e0',
+  'src/third_party/boringssl/src':
+    'https://boringssl.googlesource.com/boringssl.git@c880e42ba1c8032d4cdde2aba0541d8a9d9fa2e9',
+  'src/third_party/catapult':
+    (Var("chromium_git")) + '/external/github.com/catapult-project/catapult.git@a489be785184f64356555a8170452a6d6880cc5d',
+  'src/third_party/cld_2/src':
+    (Var("chromium_git")) + '/external/github.com/CLD2Owners/cld2.git@84b58a5d7690ebf05a91406f371ce00c3daf31c0',
+  'src/third_party/colorama/src':
+    (Var("chromium_git")) + '/external/colorama.git@799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
+  'src/third_party/dom_distiller_js/dist':
+    (Var("chromium_git")) + '/external/github.com/chromium/dom-distiller-dist.git@e21fe06cb71327ec62431f823e783d7b02f97b26',
+  'src/third_party/ffmpeg':
+    (Var("chromium_git")) + '/chromium/third_party/ffmpeg.git@b828a1bc02572754455e97508e4b78fc06d5e6fa',
+  'src/third_party/flac':
+    (Var("chromium_git")) + '/chromium/deps/flac.git@2c4b86af352b23498315c016dc207e3fb2733fc0',
+  'src/third_party/hunspell_dictionaries':
+    (Var("chromium_git")) + '/chromium/deps/hunspell_dictionaries.git@c106afdcec5d3de2622e19f1b3294c47bbd8bd72',
+  'src/third_party/icu':
+    (Var("chromium_git")) + '/chromium/deps/icu.git@052cebbb5f0695b797b0053cb302a2ca29b8044a',
+  'src/third_party/jsoncpp/source':
+    (Var("chromium_git")) + '/external/github.com/open-source-parsers/jsoncpp.git@f572e8e42e22cfcf5ab0aea26574f408943edfa4',
+  'src/third_party/leveldatabase/src':
+    (Var("chromium_git")) + '/external/leveldb.git@706b7f8d43b0aecdc75c5ee49d3e4ef5f27b9faf',
+  'src/third_party/libaddressinput/src':
+    (Var("chromium_git")) + '/external/libaddressinput.git@5eeeb797e79fa01503fcdcbebdc50036fac023ef',
+  'src/third_party/libexif/sources':
+    (Var("chromium_git")) + '/chromium/deps/libexif/sources.git@9d467f7d21e4749ee22ee7520e561ac7b38484b9',
+  'src/third_party/libjingle/source/talk':
+    (Var("chromium_git")) + '/external/webrtc/trunk/talk.git@a4cc90bc9bfb5cc932075aebccb734e38932b107',
+# TODO(terry): Hash different between original and git mirror above is new hash below is original hash.  Some CL though.
+#    (Var("chromium_git")) + '/external/webrtc/trunk/talk.git@04170d694b177d0e4b2c4f191daad36e88f765b2',
+  'src/third_party/libjpeg_turbo':
+    (Var("chromium_git")) + '/chromium/deps/libjpeg_turbo.git@e4e75037f29745f1546b6ebf5cf532e841c04c2c',
+  'src/third_party/libphonenumber/src/phonenumbers':
+    (Var("chromium_git")) + '/external/libphonenumber/cpp/src/phonenumbers.git@0d6e3e50e17c94262ad1ca3b7d52b11223084bca',
+  'src/third_party/libphonenumber/src/resources':
+    (Var("chromium_git")) + '/external/libphonenumber/resources.git@b6dfdc7952571ff7ee72643cd88c988cbe966396',
+  'src/third_party/libphonenumber/src/test':
+    (Var("chromium_git")) + '/external/libphonenumber/cpp/test.git@f351a7e007f9c9995494499120bbc361ca808a16',
+  'src/third_party/libsrtp':
+    (Var("chromium_git")) + '/chromium/deps/libsrtp.git@8eecac0feef4c65e2debb42718a10eab91551f35',
+  'src/third_party/libvpx_new/source/libvpx':
+    (Var("chromium_git")) + '/webm/libvpx.git@89cc68252846478fa7f2d570d96ff93776cefac6',
+  'src/third_party/libwebm/source':
+    (Var("chromium_git")) + '/webm/libwebm.git@75a6d2da8b63e0c446ec0ce1ac942c2962d959d7',
+  'src/third_party/libyuv':
+    (Var("chromium_git")) + '/libyuv/libyuv.git@20343f45c612e485cd898aeaae2250df2d0b2d2d',
+  'src/third_party/mesa/src':
+    (Var("chromium_git")) + '/chromium/deps/mesa.git@ef811c6bd4de74e13e7035ca882cc77f85793fef',
+  'src/third_party/openh264/src':
+    (Var("chromium_git")) + '/external/github.com/cisco/openh264@b37cda248234162033e3e11b0335f3131cdfe488',
+  'src/third_party/openmax_dl':
+    (Var("chromium_git")) + '/external/webrtc/deps/third_party/openmax.git@6670e52d32351145a6b6c198dab3f6a536edf3db',
+  'src/third_party/opus/src':
+    (Var("chromium_git")) + '/chromium/deps/opus.git@655cc54c564b84ef2827f0b2152ce3811046201e',
+  'src/third_party/pdfium':
+    'https://pdfium.googlesource.com/pdfium.git@58340b0f837343671f1eb033371a41441eae80cd',
+  'src/third_party/py_trace_event/src':
+    (Var("chromium_git")) + '/external/py_trace_event.git@dd463ea9e2c430de2b9e53dea57a77b4c3ac9b30',
+  'src/third_party/pyftpdlib/src':
+    (Var("chromium_git")) + '/external/pyftpdlib.git@2be6d65e31c7ee6320d059f581f05ae8d89d7e45',
+  'src/third_party/pywebsocket/src':
+    (Var("chromium_git")) + '/external/github.com/google/pywebsocket.git@2d7b73c3acbd0f41dcab487ae5c97c6feae06ce2',
+  'src/third_party/re2/src':
+    (Var("chromium_git")) + '/external/github.com/google/re2.git@dba3349aba83b5588e85e5ecf2b56c97f2d259b7',
+  'src/third_party/safe_browsing/testing':
+    (Var("chromium_git")) + '/external/google-safe-browsing/testing.git@9d7e8064f3ca2e45891470c9b5b1dce54af6a9d6',
+  'src/third_party/scons-2.0.1':
+    (Var("chromium_git")) + '/native_client/src/third_party/scons-2.0.1.git@1c1550e17fc26355d08627fbdec13d8291227067',
+  'src/third_party/sfntly/src':
+    (Var("chromium_git")) + '/external/github.com/googlei18n/sfntly.git@130f832eddf98467e6578b548cb74ce17d04a26d',
+  'src/third_party/skia':
+    (Var("chromium_git")) + '/skia.git@b95c8954fceebf67629d894d26cf57a170507612',
+  'src/third_party/smhasher/src':
+    (Var("chromium_git")) + '/external/smhasher.git@e87738e57558e0ec472b2fc3a643b838e5b6e88f',
+  'src/third_party/snappy/src':
+    (Var("chromium_git")) + '/external/snappy.git@762bb32f0c9d2f31ba4958c7c0933d22e80c20bf',
+  'src/third_party/usrsctp/usrsctplib':
+    (Var("chromium_git")) + '/external/github.com/sctplab/usrsctp@c60ec8b35c3fe6027d7a3faae89d1c8d7dd3ce98',
+  'src/third_party/webdriver/pylib':
+    (Var("chromium_git")) + '/external/selenium/py.git@5fd78261a75fe08d27ca4835fb6c5ce4b42275bd',
+  'src/third_party/webgl/src':
+    (Var("chromium_git")) + '/external/khronosgroup/webgl.git@1012e1f8baea808f3bc9fcef945d66b5f740c32b',
+  'src/third_party/webpagereplay':
+    (Var("chromium_git")) + '/external/github.com/chromium/web-page-replay.git@7564939bdf6482d57b9bd5e9c931679f96d8cf75',
+# TODO(terry): below directory to enlist temporary commented out to explicitly pull in src/third_party/webrtc
+#              at SHA commit 256ade59023c75dcf2135a4d99a371c09d07e0fe (need to revert src checkin
+#              https://codereview.chromium.org/2741183002 then uncomment below 2 lines and remove rest
+#              of comments below those 2 lines.
+#  'src/third_party/webrtc':
+#    (Var("chromium_git")) + '/external/webrtc/trunk/webrtc.git@256ade59023c75dcf2135a4d99a371c09d07e0fe',
+# TODO(terry): Above is correct commit - below is a commit that exists on the mirrors.
+#
+#              To work around comment the above SHA and enable the below SHA
+#              do a gclient sync then after that do this:
+#
+#              > git fetch origin refs/branch-heads/50
+#              > git checkout -b webrtc_roll_50 256ade59023c75dcf2135a4d99a371c09d07e0
+#
+#              then comment the below SHA and enable the above SHA line.
+#
+#              then gclient sync again, everything will now work locally.
+#
+#    (Var("chromium_git")) + '/external/webrtc/trunk/webrtc.git@780d506ddf7bcba4a3dc04cfe2240c1ae80880f2',
+  'src/third_party/yasm/source/patched-yasm':
+    (Var("chromium_git")) + '/chromium/deps/yasm/patched-yasm.git@7da28c6c7c6a1387217352ce02b31754deb54d2a',
+  'src/tools/gyp':
+    (Var("chromium_git")) + '/external/gyp.git@ed163ce233f76a950dce1751ac851dbe4b1c00cc',
+  'src/tools/page_cycler/acid3':
+    (Var("chromium_git")) + '/chromium/deps/acid3.git@6be0a66a1ebd7ebc5abc1b2f405a945f6d871521',
+  'src/tools/swarming_client':
+    (Var("chromium_git")) + '/external/swarming.client.git@a72f46e42dba1335e8001499b4621acad2d26728',
+  'src/v8':
+    (Var("chromium_git")) + '/v8/v8.git@45a71919836046560ba8eb349eaf9172857ffe6f',
+
+  # Start of Dartium specific deps
+
   "src":
     Var("chromium_git") + "/dart/dartium/src.git" + "@" +
         Var("dartium_chromium_commit"),
@@ -173,52 +358,596 @@
   "src/dart/third_party/zlib":
       Var("chromium_git") + "/chromium/src/third_party/zlib.git" +
       Var("zlib_rev"),
-})
 
-deps_os['win'].update({
-  "src/chrome/tools/test/reference_build/chrome_win": None
-})
-deps_os['mac'].update({
-  "src/chrome/tools/test/reference_build/chrome_mac": None
-})
-deps_os['unix'].update({
-  "src/chrome/tools/test/reference_build/chrome_linux": None
-})
+  # End of Dartium deps
+}
+deps_os = {
+  'android': {
+    'src/third_party/android_protobuf/src':
+      (Var("chromium_git")) + '/external/android_protobuf.git@999188d0dc72e97f7fe08bb756958a2cf090f4e7',
+    'src/third_party/android_tools':
+      (Var("chromium_git")) + '/android_tools.git@f4c36ad89b2696b37d9cd7ca7d984b691888b188',
+    'src/third_party/apache-mime4j':
+      (Var("chromium_git")) + '/chromium/deps/apache-mime4j.git@28cb1108bff4b6cf0a2e86ff58b3d025934ebe3a',
+    'src/third_party/apache-portable-runtime/src':
+      (Var("chromium_git")) + '/external/apache-portable-runtime.git@c76a8c4277e09a82eaa229e35246edea1ee0a6a1',
+    'src/third_party/appurify-python/src':
+      (Var("chromium_git")) + '/external/github.com/appurify/appurify-python.git@ee7abd5c5ae3106f72b2a0b9d2cb55094688e867',
+    'src/third_party/cardboard-java/src':
+      (Var("chromium_git")) + '/external/github.com/googlesamples/cardboard-java.git@e36ee57e72bbd057ddb53b127954177b50e18df7',
+    'src/third_party/custom_tabs_client/src':
+      (Var("chromium_git")) + '/external/github.com/GoogleChrome/custom-tabs-client.git@8ae46d26e739899d2e35f462beeb20e9c194d0ab',
+    'src/third_party/elfutils/src':
+      (Var("chromium_git")) + '/external/elfutils.git@249673729a7e5dbd5de4f3760bdcaa3d23d154d7',
+    'src/third_party/errorprone/lib':
+      (Var("chromium_git")) + '/chromium/third_party/errorprone.git@0eea83b66343133b9c76b7d3288c30321818ebcf',
+    'src/third_party/findbugs':
+      (Var("chromium_git")) + '/chromium/deps/findbugs.git@57f05238d3ac77ea0a194813d3065dd780c6e566',
+    'src/third_party/freetype-android/src':
+      (Var("chromium_git")) + '/chromium/src/third_party/freetype2.git@a512b0fe7a8d9db0e5aa9c0a4db1e92cb861722d',
+    'src/third_party/httpcomponents-client':
+      (Var("chromium_git")) + '/chromium/deps/httpcomponents-client.git@285c4dafc5de0e853fa845dce5773e223219601c',
+    'src/third_party/httpcomponents-core':
+      (Var("chromium_git")) + '/chromium/deps/httpcomponents-core.git@9f7180a96f8fa5cab23f793c14b413356d419e62',
+    'src/third_party/jarjar':
+      (Var("chromium_git")) + '/chromium/deps/jarjar.git@2e1ead4c68c450e0b77fe49e3f9137842b8b6920',
+    'src/third_party/jsr-305/src':
+      (Var("chromium_git")) + '/external/jsr-305.git@642c508235471f7220af6d5df2d3210e3bfc0919',
+    'src/third_party/junit/src':
+      (Var("chromium_git")) + '/external/junit.git@45a44647e7306262162e1346b750c3209019f2e1',
+    'src/third_party/leakcanary/src':
+      (Var("chromium_git")) + '/external/github.com/square/leakcanary.git@608ded739e036a3aa69db47ac43777dcee506f8e',
+    'src/third_party/lss':
+      (Var("chromium_git")) + '/external/linux-syscall-support/lss.git@4fc942258fe5509549333b9487ec018e3c8c5b10',
+    'src/third_party/mockito/src':
+      (Var("chromium_git")) + '/external/mockito/mockito.git@4d987dcd923b81525c42b1333e6c4e07440776c3',
+    'src/third_party/netty-tcnative/src':
+      (Var("chromium_git")) + '/external/netty-tcnative.git@12d01332921695e974175870175eb14a889313a1',
+    'src/third_party/netty4/src':
+      (Var("chromium_git")) + '/external/netty4.git@e0f26303b4ce635365be19414d0ac81f2ef6ba3c',
+    'src/third_party/requests/src':
+      (Var("chromium_git")) + '/external/github.com/kennethreitz/requests.git@f172b30356d821d180fa4ecfa3e71c7274a32de4',
+    'src/third_party/robolectric/lib':
+      (Var("chromium_git")) + '/chromium/third_party/robolectric.git@6b63c99a8b6967acdb42cbed0adb067c80efc810',
+    'src/third_party/ub-uiautomator/lib':
+      (Var("chromium_git")) + '/chromium/third_party/ub-uiautomator.git@00270549ce3161ae72ceb24712618ea28b4f9434'
+  },
+  'ios': {
+    'src/chrome/test/data/perf/canvas_bench': None,
+    'src/chrome/test/data/perf/frame_rate/content': None,
+    'src/ios/third_party/fishhook/src':
+      (Var("chromium_git")) + '/external/github.com/facebook/fishhook.git@d172d5247aa590c25d0b1885448bae76036ea22c',
+    'src/ios/third_party/gcdwebserver/src':
+      (Var("chromium_git")) + '/external/github.com/swisspol/GCDWebServer.git@3d5fd0b8281a7224c057deb2d17709b5bea64836',
+    'src/ios/third_party/ochamcrest/src':
+      (Var("chromium_git")) + '/external/github.com/hamcrest/OCHamcrest.git@5b50930c66d1e537918a87eef0943d6750729dc5',
+    'src/native_client': None,
+    'src/third_party/class-dump/src':
+      (Var("chromium_git")) + '/external/github.com/nygard/class-dump.git@978d177ca6f0d2e5e34acf3e8dadc63e3140ebbc',
+    'src/third_party/ffmpeg': None,
+    'src/third_party/google_toolbox_for_mac/src':
+      (Var("chromium_git")) + '/external/github.com/google/google-toolbox-for-mac.git@401878398253074c515c03cb3a3f8bb0cc8da6e9',
+    'src/third_party/hunspell_dictionaries': None,
+    'src/third_party/nss':
+      (Var("chromium_git")) + '/chromium/deps/nss.git@225bfc39c93dfb7c7d0d1162f81e9bb5cd356c30',
+    'src/third_party/webgl': None
+  },
+  'mac': {
+    'src/chrome/installer/mac/third_party/xz/xz':
+      (Var("chromium_git")) + '/chromium/deps/xz.git@eecaf55632ca72e90eb2641376bce7cdbc7284f7',
 
-hooks[0:0] = [{
-    "pattern": "dart",
-    "action": ["python", "src/dart/tools/dartium/generate_dart_vm_version.py"],
-  }]
+    # Dartium deps_os
+    'src/chrome/tools/test/reference_build/chrome_mac': None,
 
-hooks.append({
-  "name": "checked_in_dart_sdks",
-  "pattern": ".",
-  "action": [
-    "download_from_google_storage",
-    "--no_auth",
-    "--no_resume",
-    "--bucket",
-    "dart-dependencies",
-    "--recursive",
-    "--auto_platform",
-    "--extract",
-    "--directory",
-    "src/dart/tools/sdks",
-  ],
-})
-hooks.append({
-  "name": "unittest",
-  # Unittest is an early version, 0.11.6, of the package "test"
-  # Do not use it in any new tests.
-  "pattern": ".",
-  "action": [
-    "download_from_google_storage",
-    "--no_auth",
-    "--no_resume",
-    "--bucket",
-    "dart-dependencies",
-    "--extract",
-    "-s",
-    "src/dart/third_party/pkg/unittest.tar.gz.sha1",
-  ],
-})
+    'src/third_party/google_toolbox_for_mac/src':
+      (Var("chromium_git")) + '/external/github.com/google/google-toolbox-for-mac.git@401878398253074c515c03cb3a3f8bb0cc8da6e9',
+    'src/third_party/lighttpd':
+      (Var("chromium_git")) + '/chromium/deps/lighttpd.git@9dfa55d15937a688a92cbf2b7a8621b0927d06eb',
+    'src/third_party/nss':
+      (Var("chromium_git")) + '/chromium/deps/nss.git@225bfc39c93dfb7c7d0d1162f81e9bb5cd356c30',
+    'src/third_party/pdfsqueeze':
+      (Var("chromium_git")) + '/external/pdfsqueeze.git@5936b871e6a087b7e50d4cbcb122378d8a07499f'
+  },
+  'unix': {
+    # Dartium deps_os
+    'src/chrome/tools/test/reference_build/chrome_linux': None,
+
+    'src/third_party/chromite':
+      (Var("chromium_git")) + '/chromiumos/chromite.git@e19f83ba227bf1ec0077f5d3a816a415f1dd88d0',
+    'src/third_party/cros_system_api':
+      (Var("chromium_git")) + '/chromiumos/platform/system_api.git@7d0047203cf4263940e92d50b0725d0faf4d9281',
+    'src/third_party/deqp/src':
+      'https://android.googlesource.com/platform/external/deqp@cc0ded6c77267bbb14d21aac358fc5d9690c07f8',
+    'src/third_party/fontconfig/src':
+      (Var("chromium_git")) + '/external/fontconfig.git@f16c3118e25546c1b749f9823c51827a60aeb5c1',
+    'src/third_party/freetype-android/src':
+      (Var("chromium_git")) + '/chromium/src/third_party/freetype2.git@a512b0fe7a8d9db0e5aa9c0a4db1e92cb861722d',
+    'src/third_party/freetype2/src':
+      (Var("chromium_git")) + '/chromium/src/third_party/freetype2.git@fc1532a7c4c592f24a4c1a0261d2845524ca5cff',
+    'src/third_party/liblouis/src':
+      (Var("chromium_git")) + '/external/liblouis-github.git@5f9c03f2a3478561deb6ae4798175094be8a26c2',
+    'src/third_party/lss':
+      (Var("chromium_git")) + '/external/linux-syscall-support/lss.git@4fc942258fe5509549333b9487ec018e3c8c5b10',
+    'src/third_party/minigbm/src':
+      (Var("chromium_git")) + '/chromiumos/platform/minigbm.git@f9d2ab79a15a1bb6a1307f3b608964c81c27791b',
+    'src/third_party/pyelftools':
+      (Var("chromium_git")) + '/chromiumos/third_party/pyelftools.git@bdc1d380acd88d4bfaf47265008091483b0d614e',
+    'src/third_party/wayland-protocols/src':
+      (Var("chromium_git")) + '/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git@596dfda882a51c05699bcb28a8459ce936a138db',
+    'src/third_party/wayland/src':
+      (Var("chromium_git")) + '/external/anongit.freedesktop.org/git/wayland/wayland.git@7ed00c1de77afbab23f4908fbd9d60ec070c209b',
+    'src/third_party/wds/src':
+      (Var("chromium_git")) + '/external/github.com/01org/wds@f187dda5fccaad08e168dc6657109325f42c648e',
+    'src/third_party/xdg-utils':
+      (Var("chromium_git")) + '/chromium/deps/xdg-utils.git@d80274d5869b17b8c9067a1022e4416ee7ed5e0d'
+  },
+  'win': {
+    # Dartium deps_os
+    'src/chrome/tools/test/reference_build/chrome_win': None,
+
+    'src/third_party/bison':
+      (Var("chromium_git")) + '/chromium/deps/bison.git@083c9a45e4affdd5464ee2b224c2df649c6e26c3',
+    'src/third_party/cygwin':
+      (Var("chromium_git")) + '/chromium/deps/cygwin.git@c89e446b273697fadf3a10ff1007a97c0b7de6df',
+    'src/third_party/deqp/src':
+      'https://android.googlesource.com/platform/external/deqp@cc0ded6c77267bbb14d21aac358fc5d9690c07f8',
+    'src/third_party/gnu_binutils':
+      (Var("chromium_git")) + '/native_client/deps/third_party/gnu_binutils.git@f4003433b61b25666565690caf3d7a7a1a4ec436',
+    'src/third_party/gperf':
+      (Var("chromium_git")) + '/chromium/deps/gperf.git@d892d79f64f9449770443fb06da49b5a1e5d33c1',
+    'src/third_party/lighttpd':
+      (Var("chromium_git")) + '/chromium/deps/lighttpd.git@9dfa55d15937a688a92cbf2b7a8621b0927d06eb',
+    'src/third_party/mingw-w64/mingw/bin':
+      (Var("chromium_git")) + '/native_client/deps/third_party/mingw-w64/mingw/bin.git@3cc8b140b883a9fe4986d12cfd46c16a093d3527',
+    'src/third_party/nacl_sdk_binaries':
+      (Var("chromium_git")) + '/chromium/deps/nacl_sdk_binaries.git@759dfca03bdc774da7ecbf974f6e2b84f43699a5',
+    'src/third_party/nss':
+      (Var("chromium_git")) + '/chromium/deps/nss.git@225bfc39c93dfb7c7d0d1162f81e9bb5cd356c30',
+    'src/third_party/pefile':
+      (Var("chromium_git")) + '/external/pefile.git@72c6ae42396cb913bcab63c15585dc3b5c3f92f1',
+    'src/third_party/perl':
+      (Var("chromium_git")) + '/chromium/deps/perl.git@ac0d98b5cee6c024b0cffeb4f8f45b6fc5ccdb78',
+    'src/third_party/psyco_win32':
+      (Var("chromium_git")) + '/chromium/deps/psyco_win32.git@f5af9f6910ee5a8075bbaeed0591469f1661d868',
+    'src/third_party/yasm/binaries':
+      (Var("chromium_git")) + '/chromium/deps/yasm/binaries.git@52f9b3f4b0aa06da24ef8b123058bb61ee468881'
+  }
+}
+hooks = [
+  {
+    # Dartium hooks start
+    'action': ['python', 'src/dart/tools/dartium/generate_dart_vm_version.py'],
+    'pattern': 'dart',
+    # Dartium hooks end
+    'name':
+      'landmines'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/download_nacl_toolchains.py',
+      '--mode',
+      'nacl_core_sdk',
+      'sync',
+      '--extract'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'nacltools'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/android/play_services/update.py',
+      'download'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'sdkextras'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/linux/sysroot_scripts/install-sysroot.py',
+      '--running-as-hook'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'sysroot'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/vs_toolchain.py',
+      'update'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'win_toolchain'
+  },
+  {
+    'action': [
+      'python',
+      'src/third_party/binutils/download.py'
+    ],
+    'pattern':
+      'src/third_party/binutils',
+    'name':
+      'binutils'
+  },
+  {
+    'action': [
+      'python',
+      'src/tools/clang/scripts/update.py',
+      '--if-needed'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'clang'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/util/lastchange.py',
+      '-o',
+      'src/build/util/LASTCHANGE'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'lastchange'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/util/lastchange.py',
+      '--git-hash-only',
+      '-s',
+      'src/third_party/WebKit',
+      '-o',
+      'src/build/util/LASTCHANGE.blink'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'lastchange_blink'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=win32',
+      '--no_auth',
+      '--bucket',
+      'chromium-gn',
+      '-s',
+      'src/buildtools/win/gn.exe.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'gn_win'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=darwin',
+      '--no_auth',
+      '--bucket',
+      'chromium-gn',
+      '-s',
+      'src/buildtools/mac/gn.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'gn_mac'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=linux*',
+      '--no_auth',
+      '--bucket',
+      'chromium-gn',
+      '-s',
+      'src/buildtools/linux64/gn.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'gn_linux64'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=win32',
+      '--no_auth',
+      '--bucket',
+      'chromium-clang-format',
+      '-s',
+      'src/buildtools/win/clang-format.exe.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'clang_format_win'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=darwin',
+      '--no_auth',
+      '--bucket',
+      'chromium-clang-format',
+      '-s',
+      'src/buildtools/mac/clang-format.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'clang_format_mac'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=linux*',
+      '--no_auth',
+      '--bucket',
+      'chromium-clang-format',
+      '-s',
+      'src/buildtools/linux64/clang-format.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'clang_format_linux'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=darwin',
+      '--no_auth',
+      '--bucket',
+      'chromium-libcpp',
+      '-s',
+      'src/third_party/libc++-static/libc++.a.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'libcpp_mac'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=win32',
+      '--no_auth',
+      '--bucket',
+      'chromium-luci',
+      '-d',
+      'src/tools/luci-go/win64'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'luci-go_win'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=darwin',
+      '--no_auth',
+      '--bucket',
+      'chromium-luci',
+      '-d',
+      'src/tools/luci-go/mac64'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'luci-go_mac'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=linux*',
+      '--no_auth',
+      '--bucket',
+      'chromium-luci',
+      '-d',
+      'src/tools/luci-go/linux64'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'luci-go_linux'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=linux*',
+      '--no_auth',
+      '--bucket',
+      'chromium-eu-strip',
+      '-s',
+      'src/build/linux/bin/eu-strip.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'eu-strip'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=win32',
+      '--no_auth',
+      '--bucket',
+      'chromium-drmemory',
+      '-s',
+      'src/third_party/drmemory/drmemory-windows-sfx.exe.sha1'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'drmemory'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/get_syzygy_binaries.py',
+      '--output-dir=src/third_party/syzygy/binaries',
+      '--revision=2d774f05a05cbc2f0dd929170c7a62fd549b2c5f',
+      '--overwrite'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'syzygy-binaries'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/get_syzygy_binaries.py',
+      '--output-dir=src/third_party/kasko/binaries',
+      '--revision=266a18d9209be5ca5c5dcd0620942b82a2d238f3',
+      '--resource=kasko.zip',
+      '--resource=kasko_symbols.zip',
+      '--overwrite'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'kasko'
+  },
+  {
+    'action': [
+      'download_from_google_storage',
+      '--no_resume',
+      '--platform=win32',
+      '--directory',
+      '--recursive',
+      '--no_auth',
+      '--num_threads=16',
+      '--bucket',
+      'chromium-apache-win32',
+      'src/third_party/apache-win32'
+    ],
+    'pattern':
+      '\\.sha1',
+    'name':
+      'apache_win32'
+  },
+  {
+    'action': [
+      'python',
+      'src/third_party/instrumented_libraries/scripts/download_binaries.py'
+    ],
+    'pattern':
+      '\\.sha1',
+    'name':
+      'instrumented_libraries'
+  },
+  {
+    'action': [
+      'python',
+      'src/tools/remove_stale_pyc_files.py',
+      'src/android_webview/tools',
+      'src/gpu/gles2_conform_support',
+      'src/infra',
+      'src/ppapi',
+      'src/printing',
+      'src/third_party/closure_compiler/build',
+      'src/tools'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'remove_stale_pyc_files'
+  },
+  {
+    'action': [
+      'python',
+      'src/build/gyp_chromium'
+    ],
+    'pattern':
+      '.',
+    'name':
+      'gyp'
+  },
+
+  # Dartium hooks start
+  {
+    "name": "checked_in_dart_sdks",
+    "pattern": ".",
+    "action": [
+      "download_from_google_storage",
+      "--no_auth",
+      "--no_resume",
+      "--bucket",
+      "dart-dependencies",
+      "--recursive",
+      "--auto_platform",
+      "--extract",
+      "--directory",
+      "src/dart/tools/sdks",
+    ],
+  },
+  {
+    "name": "unittest",
+    # Unittest is an early version, 0.11.6, of the package "test"
+    # Do not use it in any new tests.
+    "pattern": ".",
+    "action": [
+      "download_from_google_storage",
+      "--no_auth",
+      "--no_resume",
+      "--bucket",
+      "dart-dependencies",
+      "--extract",
+      "-s",
+      "src/dart/third_party/pkg/unittest.tar.gz.sha1",
+    ],
+  }
+
+  # Dartium hooks end
+]
+include_rules = [
+  '+base',
+  '+build',
+  '+ipc',
+  '+library_loaders',
+  '+testing',
+  '+third_party/icu/source/common/unicode',
+  '+third_party/icu/source/i18n/unicode',
+  '+url'
+]
+skip_child_includes = [
+  'breakpad',
+  'native_client_sdk',
+  'out',
+  'sdch',
+  'skia',
+  'testing',
+  'v8',
+  'win8'
+]
+
+# END OF IMPORTED CHROMIUM DEPS
diff --git a/tools/dom/templates/html/dartium/impl_MouseEvent.darttemplate b/tools/dom/templates/html/dartium/impl_MouseEvent.darttemplate
index cc263cf..a091220 100644
--- a/tools/dom/templates/html/dartium/impl_MouseEvent.darttemplate
+++ b/tools/dom/templates/html/dartium/impl_MouseEvent.darttemplate
@@ -74,6 +74,6 @@
   Point get page => new Point/*<num>*/(_pageX, _pageY);
 
   @DomName('MouseEvent.dataTransfer')
-  DataTransfer get dataTransfer => js.JsNative.getProperty(js.context, 'dataTransfer');
+  DataTransfer get dataTransfer => js.JsNative.getProperty(this, 'dataTransfer');
 
 }
